Исключительная многочастная форма POSTing с http-проводником

Я пытаюсь отправить запрос из нескольких частей на внутренний сайт, который должен ответить XML-ответом. Используя другой простой скрипт, который у меня есть в Python с библиотекой запросов, все работает нормально, однако, используя http-проводник, я продолжаю получать исключение ExpectedBlankAfter100Continue.

Если я заменю внутренний URL-адрес на " https://httpbin.org/post", я также получу ответ без проблем.

Я что-то не так делаю? Кажется, что либо ошибка в библиотеке, либо сайт работает не так, как ожидалось. Если последнее имеет место, есть ли возможность отключить эту проверку в http -роводке?

Образец кода:

{-# LANGUAGE OverloadedStrings #-}

import Network
import Network.HTTP.Conduit
import Network.HTTP.Client.MultipartFormData
import qualified Data.ByteString.Lazy.Char8 as BL
import Data.Maybe (fromJust)
import System.Environment (getArgs)
import Control.Monad.IO.Class

main = do
    [x] <- getArgs
    --let url = "https://url.net/api.asp"
    let url = "https://httpbin.org/post"
    withSocketsDo $ withManager $ \m -> do
        r <- flip httpLbs m =<< (formDataBody (request $ BL.pack x) $ fromJust $ parseUrl url)
        liftIO $ BL.putStrLn $ responseBody r

request :: BL.ByteString -> [Part]
request x = <code removed>

1 ответ

Решение

Похоже, сервер возвращает неверно сформированный ответ "100-продолжение". Но здесь недостаточно информации для правильной отладки, вероятно, лучше разобраться с этим в проблеме Github.

Другие вопросы по тегам