簡體   English   中英

帶http導管的異常POST多部分表單

[英]Exception POSTing multipart form with http-conduit

我正在嘗試將多部分表單請求發布到內部網站,該網站應該以XML響應進行回復。 使用我在Python中帶有請求庫的另一個簡單腳本,一切正常,但是,使用http-conduit,我不斷收到異常ExpectedBlankAfter100Continue。

如果我將內部網址替換為“ 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>

聽起來服務器正在返回格式錯誤的100連續響應。 但是這里沒有足夠的信息來適當地調試它,在Github問題中處理它可能更好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM