簡體   English   中英

ASP.NET-異步回發后處理重定向

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM