コードが壊れた理由がわかりません。parseURL
最初は、を与えるからだと思い[]
ましたrequestHeaders
。さて、多分私はそれにresquestHeadersがどうあるべきかを伝える必要があります。requestHeaders
さて、私は私の古い、動作しているコードから生成されたものを調べました。それも、を返します[]
。だから今、私はアイデアがありません。以下は、古い動作コードであり、GHCiで新しいコンジットベースのライブラリを使用して試したものに従います。
captureRawJson :: IO Response
captureRawJson = do
nManager <- newManager
jRequest <- parseUrl url :: (IO (Request IO))
jResponse <- httpLbsRedirect jRequest nManager
closeManager nManager
return jResponse
上記は正常に機能します。これが、移行中に実行しようとしたことと、表示されるエラーです。
Prelude Network.HTTP.Conduit> nManager <- newManager def
Prelude Network.HTTP.Conduit> jRequest <- parseUrl "https://10.69.69.1/cgi-bin/qaLinkEditor.cgi?json=1" :: (IO (Request IO))
Prelude Network.HTTP.Conduit> let response = httpLbs jRequest nManager
Prelude Network.HTTP.Conduit Control.Monad.Trans.Resource> runResourceT response
*** Exception: error unexpected packet: Handshake [ServerHelloDone]
ご覧のとおり、これはほぼ同じコードです。ですから、何が変わったのか、そして何をもっと詳しく見ていくべきかについてのフィードバックをお願いします。また、クライアントコードとサーバーの間で送受信されるhttpヘッダーを確認するにはどうすればよいですか?