2010-11-24 7 views
0

こんにちは http_refererが現在のサイトと同じサイトであるかどうかを確認する必要があります。http_refererとhttp_hostを比較する

私はこれはというエラーを投げている次のコード

Dim strReferer As String 

strReferer = Request.ServerVariables("HTTP_REFERER") 
If strReferer.Contains(Request.ServerVariables("HTTP_HOST")) then 
    'do task 
End If 

持っている - 「オブジェクト参照オブジェクトのインスタンスに設定されていません。」と、コードの問題の行としてであればラインフラグを立てるを。

私は間違っていますか?

私の解決策:

strReferer = "" & Request.ServerVariables("HTTP_REFERER") 

は、文字列は常に、それは何もない場合でも値を有することを意味します。

答えて

3

は必ずしも入力されていないため、リンクをクリックした場合にのみ表示されます。したがって、ページを直接参照すると、そのヘッダーは空になります。

1

Request.ServerVariables("HTTP_REFERER")nullである可能性がありますので、変数を割り当てる際にこれを確認する必要があります。

If Not String.IsNullOrEmpty(Request.ServerVariables("HTTP_REFERER")) 
    'do your stuff 
関連する問題