-1

我正在使用此函数获取引用当前页面的页面链接(在后退按钮中):- 共享函数 RefererPage() As String Return HttpContext.Current.Request.ServerVariables("HTTP_REFERER") End Function

此功能在 mozilla firfox 上运行良好,但在 Internet Explorer (IE8) 上运行不正常,请告诉我为什么它不工作以及如何使其工作。

4

2 回答 2

0

使用服务器端按钮而不是 html 按钮,那么它也可以在 IE 上正常工作。

于 2009-12-22T09:27:43.503 回答
-1

如果引用页面使用 JavaScript 执行导航,IE8 将不会发送 HTTP 'Referer' 标头。有关更多信息,请参阅此博客文章

这也在这个 Stack Overflow question中讨论。

一般来说,“Referer”标头不能保证有效。它大部分时间都有效,但它可以被禁用或欺骗。因此,最好将您的应用程序设计为不依赖引荐来源网址。例如,您可以在链接 URL 的查询字符串中添加一些内容来识别用户来自何处。

如果您确实想使用“Referer”标头并控制引荐页面,那么我在上面提到的博客文章中描述了一种 JavaScript 解决方法。

如果您不控制引荐页面(例如,访问者直接来自 Google),您可能不走运。

于 2009-12-18T07:04:43.273 回答