0
私の質問が正しいかどうかわかりませんが、関連する情報は見つかりませんでした。私はHttpClientが自動的にHTTPS応答を解読するはずだと仮定していますが、何らかの理由でFiddlerが動作している場合を除いてそうではありません。HttpClientはFiddlerなしでHTTPSを復号化しません
HttpClient Client;
HttpResponseMessage response;
using (var request = new HttpRequestMessage(HttpMethod.Get, "https://www.google.com/"))
{
request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("text/html"));
response = await Client.SendAsync(request);
response.EnsureSuccessStatusCode();
}
string sResponse = await response.Content.ReadAsStringAsync();
Log(sResponse); // "\u001f�\b\0\0\0\0\0\u0002��i{۸�0��\u007f\u0005͜c�c�\u0016" etc.
私はフィドラーとリセットIEのプロキシオプションですべてのHTTPS関連のオプションを無効にしようとしたが、それはそうではないようです。あなたは "GZIPを収縮" を使用エンコーディングをしていますが、自分の中で伸張方法を指定することができます
:
Client.DefaultRequestHeaders.Add("Accept-Encoding", "gzip, deflate");
EDITを: