none
Request.UrlReferrerの判定方法について RRS feed

  • 質問

  • A画面(ログイン画面)から B画面(一覧画面)に遷移した際の処理について、
    B画面で、A画面のURLを、 Request.UrlReferrerにて取得し、特定URLのみ、画面処理を行い、特定URLのみ以外、別画面に遷移する処理を作成したいと考えています。

    Request.UrlReferrerにて、URLの取得は、できたのですが、その後の、URLの判定処理で、困っています。

     

    URLの内容を判定する方法を、教えてください。

     

    よろしくお願いします。

     

    環境は以下の通りです。

    システム : Wicrosoft Windows 2000 Service Pack4
    DB : SQL Server 2005

    Microsoft Visual Web Developer 2005 Express Edition
    NET.Framework 2.0
    開発言語 VB
    ASP.NET 2.0


    サンプルソース(一部抜粋)

     

                 Dim THEREF As Uri

     

               THEREF = Request.UrlReferrer
                System.Diagnostics.Debug.WriteLine(THEREF)
                 Dim THEREF1 As String = THEREF.ToString
                If (THEREF1 <> "http://XXX.XXX./XX/XX/XXX")  Then
                   Response.Redirect("http://XXX.XXX.XXX/XX/123.html")             
             End If
     

     

    IF文の判定箇所で、エラーになっています。
    2009年1月13日 7:57

回答

  • karashima 様へ

     

    >IF文の判定箇所で、エラーになっています。

    >どの様なエラーでしょうか?

     

    エラーは、以下のとおりです。

     

    if判定の前の、Dim THEREF1 As String = THEREF.ToStringの箇所で発生。

    デバッグモードで、起動した際、 Request.UrlReferrerは、nullのため、「

    NullReferenceExceptionは、ユーザコードによりハンドルされましせんでした。」

     

     

    nullの判定が必要ですが、うまい処理方法がわかりません。

     

    自己解決しました。

     

    nullの判定を調べて、追加し、エラーがなくなりました。

    参考意見有難うございました。

     

    以下のソースを追加しました。

     

     If THEREF IsNot Nothing Then

     

     

     

     

     

    2009年1月13日 9:16

すべての返信

  •  tanuyoshi さんからの引用

    IF文の判定箇所で、エラーになっています。

    どの様なエラーでしょうか?

    2009年1月13日 8:34
  • karashima 様へ

     

    >IF文の判定箇所で、エラーになっています。

    >どの様なエラーでしょうか?

     

    エラーは、以下のとおりです。

     

    if判定の前の、Dim THEREF1 As String = THEREF.ToStringの箇所で発生。

    デバッグモードで、起動した際、 Request.UrlReferrerは、nullのため、「

    NullReferenceExceptionは、ユーザコードによりハンドルされましせんでした。」

     

     

    nullの判定が必要ですが、うまい処理方法がわかりません。

     

    自己解決しました。

     

    nullの判定を調べて、追加し、エラーがなくなりました。

    参考意見有難うございました。

     

    以下のソースを追加しました。

     

     If THEREF IsNot Nothing Then

     

     

     

     

     

    2009年1月13日 9:16