有誰知道是否有可能發現Silverlight中WCF調用的響應導致302(臨時重定向)。Silverlight - 檢查302 http響應
生成302是因爲我們的服務在ISA和用戶會話超時之後。 Silverligt應用程序仍然在瀏覽器中加載,並且用戶進行交互以發起失敗的WCF調用。我可以得到一個未找到的錯誤,但這也報告了一些不同的問題,所以不是一個真正的解決方案。我想專門定位302並刷新頁面以讓用戶重新進行驗證。
有誰知道是否有可能發現Silverlight中WCF調用的響應導致302(臨時重定向)。Silverlight - 檢查302 http響應
生成302是因爲我們的服務在ISA和用戶會話超時之後。 Silverligt應用程序仍然在瀏覽器中加載,並且用戶進行交互以發起失敗的WCF調用。我可以得到一個未找到的錯誤,但這也報告了一些不同的問題,所以不是一個真正的解決方案。我想專門定位302並刷新頁面以讓用戶重新進行驗證。
我一直在尋找同一個問題的答案,但決定不使用這種方法來解決我正在處理的問題,所以我沒有一個強制性的解決方案,但如果您使用的是Silverlight 3,那麼你可能可以解決它。我得到儘可能使用替代HTTP堆棧於本頁面底部的討論:
這至少讓我獲取SOAP錯誤,但我不知道是否/如何可以訪問HTTP 302響應,因爲當我嘗試這樣做時,我發現Silverlight似乎實際上遵循重定向並在那裏重新發出我的SOAP請求,而不是將其報告回給我的應用程序。
我開始研究的是如何使用行爲改變這種情況。雖然我不太瞭解這個調查,但不知道它是否可行!
我遇到類似的問題,幸運的是找到了一個解決方案:能夠檢索超過200或404以外的Web請求的StatusCode你應該使用
var request = WebRequestCreator.ClientHttp.Create(uri)
,而不是
var request = WebRequest.Create(uri) as HttpWebRequest;
我寫的最近在這個問題上的帖子,你可以看看here。