HTTP でいくつかのファイルをダウンロードするアプリケーションを作成しています。ある時点まで、次のコード スニペットを使用してページの本文をダウンロードしていました。
import network.HTTP
simpleHTTP (getRequest "http://www.haskell.org/") >>= getResponseBody
正常に動作していましたが、HTTPS プロトコルによる接続を確立できませんでした。これを修正するために、HTTP コンジットに切り替え、次のコードを使用しています。
simpleHttp' :: Manager -> String -> IO (C.Response LBS.ByteString)
simpleHttp' manager url = do
request <- parseUrl url
runResourceT $ httpLbs request manager
HTTPS に接続できますが、新しいイライラする問題が発生しました。約 5 番目の接続ごとに失敗し、次の例外が発生します。
getpics.hs: FailedConnectionException "i.imgur.com" 80
network.HTTP が同じ一連のページ (https ページを除く) で正常に動作していたため、これは HTTP コンジットの問題であると確信しています。
誰かがそのような問題に遭遇し、Conduit ライブラリに代わる解決策を知っていますか?