[英]ASP.NET - Handle redirect after async post back
我有一個使用更新面板的ASP.NET Web應用程序。 該Web應用程序集成在SiteMinder SSO環境中。
當Siteminder認為是時候重新驗證用戶身份時,就會出現此問題。 當用戶執行導致異步回發的操作時,Siteminder會捕獲此請求,並將重定向響應發送回其登錄頁面。
我的ASP.NET頁不希望這樣,並引發PageRequestManagerParserErrorException。
我的猜測是,我必須在客戶端代碼中捕獲此重定向響應(使用PageRequestManager事件?)並正確處理重定向。
但是如何?
我也有同樣的問題。 我在這里找到了一種解決方案: http : //forums.asp.net/t/1470176.aspx/1
我最后在每個頁面上使用以下javascript:
function pageLoad() {
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
}
function EndRequestHandler(sender, args) {
if (args.get_error() != undefined) {
if (args.get_response().get_responseData().indexOf("<HTML><HEAD><TITLE>") == 0) {
args.set_errorHandled(true);
__doPostBack("", "");
}
else {
// not my error so let the default behavior happen
}
}
}
它可以阻止頁面完全停止,但是一旦客戶端上的SSO超時,它就會刷新整個頁面,而不是異步回發。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.