我的代碼試圖導航網址通過外部進程提供給它的,但最近我發現了一個bug在HttpWebRequest的重定向 在案件的網址爲http://ask.bitauto.com/TreeAsk/index.aspxHttpWebRequest的重定向失敗
,我發現這是什麼網址獲取瀏覽器導航成功當指定的HTTP Referer的,但淨的WebRequest的失敗(但不提供任何例外),即使.Refer分配,在啓用失敗與MaxRedirect AutoRedirects的情況下達到例外
根據MSDN
「如果AllowAutoRedirect屬性爲true,當請求被重定向到另一個站點時,Referer屬性自動設置。「
這是否意味着在同一站點重定向的處理方式不同。請讓我知道如果有人有任何想法如何解決這個問題。
由於提前
根據我對HTTP協議空白位置標題的理解,意味着你被重定向到同一頁面,HTTPWebRequest也是如此,但是在這種情況下它並沒有設置Referer Header,這種情況一次又一次地導致了來自服務器的相同響應, MaximumAutomaticRedirections。 – CodeWrite 2011-04-21 08:07:32
我沒有發現任何支持該重定向行爲的源代碼,編輯了這個答案來反映這一點。 – 2011-04-21 08:18:26
我認爲你是對的我正在使用HTTPWebRequest的AutoRedirect屬性,導致問題。 我在使用Referer手動重定向,在達到MaximumAutomaticRedirections之後,行爲使得HTTPWebRequest不可預知,程序崩潰。 現在遵循你的建議,我關閉了AutomaticRedirects及其正常工作。 感謝您的諮詢! – CodeWrite 2011-04-21 08:37:31