您好 我需要检查http_referer是否与当前站点的站点相同。
我有以下代码
Dim strReferer As String
strReferer = Request.ServerVariables("HTTP_REFERER")
If strReferer.Contains(Request.ServerVariables("HTTP_HOST")) then
'do task
End If
这引发了一个错误 - “对象引用未设置为对象的实例。”并将if行标记为有问题的代码行。
我出错的任何想法?
我的解决方案:
strReferer = "" & Request.ServerVariables("HTTP_REFERER")
表示字符串总是有值,即使它什么都没有。
答案 0 :(得分:3)
因为HTTP_REFERER
并不总是填充 - 只有您点击了链接。因此,如果您直接浏览页面,该标题将为空。
答案 1 :(得分:1)
Request.ServerVariables("HTTP_REFERER")
可能是null
,所以在分配变量时应该检查一下。
If Not String.IsNullOrEmpty(Request.ServerVariables("HTTP_REFERER"))
'do your stuff