将 http_referer 与 http_host 进行比较

发布于 2024-10-04 08:39:58 字数 472 浏览 7 评论 0原文

你好 我需要检查 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

失去的东西太少 2024-10-11 08:39:58

因为 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.

遇到 2024-10-11 08:39:58

Request.ServerVariables("HTTP_REFERER") 可能为 null,因此您应该在分配变量时检查这一点。

If Not String.IsNullOrEmpty(Request.ServerVariables("HTTP_REFERER"))
    'do your stuff

It's possible for Request.ServerVariables("HTTP_REFERER") to be null, so you should check for this when assigning the variable.

If Not String.IsNullOrEmpty(Request.ServerVariables("HTTP_REFERER"))
    'do your stuff
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文