C# 外部柜台如何获得唯一访客?
外部柜台如何通过图像跟踪独特访客C# 外部柜台如何获得唯一访客?,c#,asp.net,web,C#,Asp.net,Web,外部柜台如何通过图像跟踪独特访客 如果可能的话,我也希望得到推荐人。 类似于img=”http://www.somecounterdomain.com/count.php?page=83599" 我正在使用ASP.NET,c# 我知道用户可以“作弊”,但我希望将这种可能性降至最低。 另一个困难是我应该跟踪外部服务器,而不能在那里实现c代码。 我所能做的只是增加一个计数器映像或类似的smth。 我尝试使用生成的图像。 thx获取答案。获取“参考者”很容易,对于计算独特访客,您需要设置/检查co
如果可能的话,我也希望得到推荐人。
类似于img=”http://www.somecounterdomain.com/count.php?page=83599"
我正在使用ASP.NET,c#
我知道用户可以“作弊”,但我希望将这种可能性降至最低。
另一个困难是我应该跟踪外部服务器,而不能在那里实现c代码。
我所能做的只是增加一个计数器映像或类似的smth。 我尝试使用生成的图像。
thx获取答案。获取“参考者”很容易,对于计算独特访客,您需要设置/检查cookies。获取“参考者”很容易,对于计算独特访客,您需要设置/检查cookies。基本上您需要做的是以下几点 1-创建.ashx或.aspx。假设您使用.aspx并将其命名为StatServer.aspx,Page_Load函数将读取查询字符串并将数据写入数据库,您将在步骤2中看到querystring。如果需要,可以返回可以渲染的图像。一些粗略的代码看起来像这样
}
2-这就是神奇之处,你创建了一个小的.js文件。在这个文件中,您有一个函数,可以将其称为mystats(),它将收集客户端信息,并调用承载您在步骤1中创建的页面的URL。客户端信息(如屏幕大小、引用器等)都在querystring上传递。函数中要包含的一个重要内容是一个ID,它指示您正在更新的计数器,这样您就可以在多个站点上使用计数器。一个非常简单的.js可能看起来像这样。(注:测试等)
函数mystats(id)
{
//包含计数器ID的基本URL
变量url=”http://yourdomainorservername/statserver.aspx?id=“+id
//将引用添加到url查询字符串
url+=“&r=“+escape(document.referer);
//添加屏幕宽度+高度
url+=“&w=“+screen.width+”&h=“+screen.height;
文件。写(“”);
}
3-在要应用计数器的网页上,添加一个脚本块,其中包含来自服务器的.js文件,并从img标记调用mystats函数,这会导致js代码收集信息并向服务器发送请求,然后更新数据库并返回要显示的图像流。基本上,您需要执行以下操作 1-创建.ashx或.aspx。假设您使用.aspx并将其命名为StatServer.aspx,Page_Load函数将读取查询字符串并将数据写入数据库,您将在步骤2中看到querystring。如果需要,可以返回可以渲染的图像。一些粗略的代码看起来像这样
}
2-这就是神奇之处,你创建了一个小的.js文件。在这个文件中,您有一个函数,可以将其称为mystats(),它将收集客户端信息,并调用承载您在步骤1中创建的页面的URL。客户端信息(如屏幕大小、引用器等)都在querystring上传递。函数中要包含的一个重要内容是一个ID,它指示您正在更新的计数器,这样您就可以在多个站点上使用计数器。一个非常简单的.js可能看起来像这样。(注:测试等)
函数mystats(id)
{
//包含计数器ID的基本URL
变量url=”http://yourdomainorservername/statserver.aspx?id=“+id
//将引用添加到url查询字符串
url+=“&r=“+escape(document.referer);
//添加屏幕宽度+高度
url+=“&w=“+screen.width+”&h=“+screen.height;
文件。写(“”);
}
3-在要应用计数器的网页上,添加一个脚本块,该脚本块包含来自服务器的.js文件,并从img标记调用mystats函数,这会导致js代码收集信息并向服务器发送请求,从而更新数据库并返回要显示的图像流
private void Page_Load(object sender, EventArgs e)
{
WriteQueryStringInformationToDB(Request.QueryString);
function mystats(id) { // Base URL including the ID of the counter var url="http://yourdomainorservername/statserver.aspx?id="+id;Image image = LoadYourImageHere(); using (MemoryStream stream = new MemoryStream()) { base.Response.Clear(); base.Response.ContentType = "image/png"; image.Save(stream, ImageFormat.Png); stream.WriteTo(base.Response.OutputStream); base.Response.End(); }
// Add the referer to the url querystring url += "&r=" + escape(document.referrer); // Add screen width + height url += "&w=" + screen.width + "&h=" + screen.height; document.write('<img src="'+url+'" border=0 alt="Site statistics">');