FSharp.Data の HTTP ユーティリティは customizeHttpRequest パラメーターを公開しています。これは基になる HttpWebRequest を受け取り、使用する要求を返します。

open System.Net
open FSharp.Data

let body =
    Http.RequestString(
        "https://example.net/data",
        customizeHttpRequest = fun request ->
            request.Proxy <- WebProxy("http://proxy.example.net:8080")
            request
    )

コールバックはこの要求にプロキシを設定します。この公開 HTTPS 要求では、その経路が許可されている場合、HTTP プロキシ一覧の未認証の候補がサンプルのエンドポイントを置き換えられます。最後の式は要求オブジェクトを返し、文書化された HttpWebRequest -> HttpWebRequest 関数型と一致します。

同じカスタマイズ パラメーターは、対応する詳細 HTTP メソッドと非同期 HTTP メソッドでも利用できます。この経路を必要とする呼び出しや再利用可能なヘルパーの側にコールバックを置いてください。アプリケーションの他の部分は、独自の要求設定を使い続けられます。

関連記事