我正在尝试将多部分表单请求发布到应以 XML 响应回复的内部网站。使用我在 Python 中的另一个简单脚本和 requests 库,一切正常,但是,使用 http-conduit 我不断收到异常 ExpectedBlankAfter100Continue。
如果我将内部 url 替换为“ https://httpbin.org/post ”,我也会收到没有问题的回复。
有什么我做错了吗?似乎库中的错误或站点的行为不符合预期。如果是后者,我是否可以选择在 http-conduit 中禁用此检查?
示例代码:
{-# 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>