将 http_referer 与 http_host 进行比较
你好 我需要检查 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")
意味着字符串总是有一个值,即使它什么也没有。
Hi
I need to check whether the http_referer is the same site as the current site.
I have the following code
Dim strReferer As String
strReferer = Request.ServerVariables("HTTP_REFERER")
If strReferer.Contains(Request.ServerVariables("HTTP_HOST")) then
'do task
End If
This is throwing up an error saying - "Object reference not set to an instance of an object." and flagging the if line as the offending line of code.
Any ideas where I'm going wrong?
MY SOLUTION:
strReferer = "" & Request.ServerVariables("HTTP_REFERER")
Means the string always has a value even if it's nothing.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
因为
HTTP_REFERER
并不总是填充 - 仅当您单击链接时。因此,如果您直接浏览到某个页面,该标题将为空。Because
HTTP_REFERER
is not always populated - only if you have clicked a link. So if you browse directly to a page, that header will be empty.Request.ServerVariables("HTTP_REFERER")
可能为null
,因此您应该在分配变量时检查这一点。It's possible for
Request.ServerVariables("HTTP_REFERER")
to benull
, so you should check for this when assigning the variable.