2017-02-19 40 views
0

考慮以下功能:爲什麼在使用HttpClient HTTPS請求時標頭和主體未加密?

private string ServerUrl = "https://api.myserver.com"; 

public async Task<T> PostRequest<T>(string hook, HttpContent content) 
{ 
    try 
    { 
     var response = await http.PostAsync(ServerUrl + hook, content); 
     var contentString = await response.Content.ReadAsStringAsync(); 

     return Serializer.ToJsonObject<T>(contentString); 
    } 
    catch 
    { 
     return default(T); 
    } 
} 

現在它工作正常,但我正在請求HTTPS不應標題和正文加密?

我用Fiddler v4來檢查事情,事實並非如此。

有什麼我失蹤或不太明白,應該如何工作?

我的服務器使用LetsEncrypt!自簽名證書。

回答

1

提示可以在UI顯示給用戶之前解密內容。你有這個設置嗎?

enter image description here

+0

因此,這意味着,任何人誰斯奈普斯它可以很容易地將其解密呢? –

+1

如果您已經設置了Fiddler和瀏覽器[一種特殊方式](https://www.fiddlerbook.com/fiddler/help/httpsdecryption.asp),則提琴手只能攔截加密流量。通常情況下,標題和正文不能被攔截。 –

+2

@J。 Doe No. Fiddler會在您的機器上安裝證書,並在中間代理連接中執行Man(會提示您允許)。然後它使用其證書代表您的HTTPS請求。它可以解密HTTPS請求。沒有該證書的人將無法解密該證書。 – squillman

相關問題