高分请教急 取出客户访问来路
现在我有a.htm b.htm c.aspx三张页面
以下是代码
a.htm
<html>
<head>
<title> Untitled Page </title>
</head>
<body>
<a href= "b.htm "> 连接到b.htm </a>
</body>
</html>
b.htm
<script language= "javascript " src= "c.aspx "> </script>
c.aspx
<%@ Page Language= "C# " AutoEventWireup= "true " CodeBehind= "c.aspx.cs " Inherits= "_C " %>
c.aspx.cs
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _C: System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!this.Page.IsPostBack)
{
this.Response.Write( "alert( ' " + GetPostPage() + " '); ");
}
}
private string GetPostPage()
{
if (Request.UrlReferrer == null)
{
return "直接输入或者收藏夹打开 ";
}
else
{
return Request.UrlReferrer.AbsoluteUri.ToString();
}
}
}
问题如下:
我用GetPostPage()方法取出的是一直是b.htm 请问怎么才能取到a.htm的地址。高手帮帮忙
[解决办法]
sf
------解决方案--------------------
UrlReferrer返回的是跟当前请求的上一个客户端的请求页面,客户端是先在a,再加载B,在加载C,你在C里面获取,当然就返回b的地址了。
不明白你为什么要这么实现?
[解决办法]
要在B.htm中获取A.htm的地址,再传递给C.aspx,C.aspx是不可能直接获取到A.htm的。
[解决办法]
Javascript的Document也有一个UrlReferrer属性,也是用来获取网页来路的。
[解决办法]
b.html
document.referrer
var ajstat_referrer= escape(document.referrer);
var ajstat_outstr= ' <script language=javascript src= ' + ajstat_url
+ 'c.aspx? '
+ 'referrer= ' + ajstat_referrer
+ '> <\/script> ';
document.write(ajstat_outstr);
参考一下那些专门做流量统计的代码
[解决办法]
Request.UrlReferrer.AbsoluteUri.ToString();
[解决办法]
关注中