2011-06-27 18 views
1

更新パネルを使用するASP.NET Webアプリケーションがあります。 WebアプリケーションはSiteMinder SSO環境に統合されています。ASP.NET - 非同期ポストバック後のリダイレクトの処理

この問題は、Siteminderがユーザーの再認証が必要であると判断した場合に発生します。 ユーザが非同期ポストバックを引き起こすアクションを実行すると、Siteminderはこのリクエストを受け取り、ログインページにリダイレクト応答を返します。

私のASP.NETページでこれを想定せず、PageRequestManagerParserErrorExceptionをスローします。

私の推測では、リダイレクト応答をクライアントコードで(PageRequestManagerイベントを使用して)捕捉し、リダイレクトを正しく処理する必要があります。

どのようにですか?

+0

おそらくこれが役立つでしょう:http://forums.asp.net/t/1084661.aspx/1 –

答えて

1

私は同じ問題があります。私は、各ページに以下のjavascriptになってしまったhttp://forums.asp.net/t/1470176.aspx/1

:私はここで1つの解決策を見つけた

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 
     } 
    } 
} 

それは完全にbeakingからページを停止しますが、それは一度フル・ページ・リフレッシュの代わりに、非同期ポストバックをしますかSSOはクライアント上でタイムアウトしました。

関連する問題