在應用程序啓動後第一次使用AmazonS3
對象時,會有大約14秒的大延遲。對於所有後續的呼叫,這個大的時間延遲不存在。如何關閉`AmazonS3`對象中的自動代理檢測?
我遇到了這個確切的延遲問題之前,與其他HTTP相關的類,它是在有問題的類試圖確定本地計算機的代理設置以及是否使用它們時引起的。
要阻止WebClient
發生這種情況,您設置了WebClient.Proxy = null;
並且它不會嘗試自動檢測代理設置,但我無法弄清楚如何禁用AmazonS3
對象的代理檢測功能。
我曾專門嘗試設置ProxyHost
到null
:
_s3Client = AWSClientFactory.CreateAmazonS3Client(awsAccessKey, awsSecretAccessKey, new AmazonS3Config { ProxyHost = null });
,沒有工作。我們目前正在使用Amazon .NET SDK'v1.3.17.0'。
有沒有辦法關閉代理檢測?
感謝您的回覆!我很感激你花時間去挖掘代碼。這真的有助於瞭解SDK在底層使用什麼技術。我也在亞馬遜.NET SDK開發者論壇上發佈了這個問題,如果我得到任何額外的信息,我會在這裏發佈。根據您提供的信息,如果SDK目前無法關閉代理檢測功能,對於他們使用WebRequest類來處理HTTP請求,這似乎是一個微不足道的變化。 +1 – InvertedAcceleration
@InvertedAcceleration - WebRequest.DefaultWebProxy是一個* public static *屬性,因此您應該可以在應用程序中自己配置它,而不需要對SDK進行任何更改(這實際上與WebClient.Proxy設計不同) 。我現在在回答中強調了這一點,抱歉誤導了! –
太棒了,完美的作品!再次感謝!希望我可以+2以及接受,因爲現在的重點使它真的很清楚(對不起,我錯過了它的初步答案!):) – InvertedAcceleration