找到引用URL并解析它

时间:2013-05-09 14:08:58

标签: c# asp.net parsing url referrer

好吧我的问题是有两个网站有两个不同的服务器。我要做的是为网站1写一些按钮,但在我的服务器(网站2)的页面上。

所以这样做的方法是

  • 用户点击网站1上的按钮。
  • 用户被重定向到网站2。
  • 我需要知道他们来自哪个页面,所以我知道他们正在看什么产品。这将通过获取引荐来源网址来完成。
  • 然后我需要解析URL的productID号码。

示例网址:website1.com/ProductDetails/?referrerPage=1&productID = #######& tab = Tile

我知道我需要使用这段代码将引荐来源网址存储在字符串中:

myReferrer = Request.UrlReferrer.ToString();

我真的不知道把它放在哪里。我在我的.cs文件中猜测我的按钮在哪里?

protected void btnEstimate_Click(object sender, EventArgs e)
{
    connection strings
    {
        does stuff
        {
            does stuff
        }

所以我的问题是如何获取引用网址,然后解析项目ID?

提前感谢您的帮助。如果有什么不清楚请问...这是我第一次提问,所以我可能不清楚。谢谢!

2 个答案:

答案 0 :(得分:1)

这可以给你你想要的东西:

Making Sense of ASP.NET Paths

请注意,包含查询字符串和额外路径的完全限定URL是Uri实例而不是字符串。您可以使用UriBuilder.Query属性来提取查询字符串参数:

您需要在接收站点页面的Page_Load方法中解析URI。

UriBuilder.Query Property

答案 1 :(得分:1)

有一个名为HTTP_REFERER的服务器变量。您可以使用Request.ServerVariables("HTTP_REFERER")

访问它

我知道这拼错了,但你真的需要调用服务器变量。

只有在用户点击链接时才会填充您的referrer服务器变量。如果你重定向AFAIK,那个变量将是空的。

Wikipedia Referer Article