62,041
社区成员
发帖
与我相关
我的任务
分享
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="InMainWebSite.WebForm1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="jquery-1.3.2.min.js" type="text/javascript"></script>
<script src="PageView.js" type="text/javascript"></script>
<script type="text/javascript">
window.onload = function() {
var obj = document.getElementById("inputFlag");
if (obj.value.length == 0) {
var guid = newGuid();
obj.value = guid;
var url = window.location.href; ;
LogPageView("begin", guid, url);
}
}
window.onbeforeunload = function() {
var obj = document.getElementById("inputFlag");
if (obj.value.length > 0) {
var guid = obj.value;
var url = window.location.href;
LogPageView("end", guid, url);
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input type="hidden" id="inputFlag" runat="Server" />
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
<input type="button" id="Hidden1" onclick="Show()" />
</div>
</form>
</body>
</html>
function newGuid() {
var guid = "";
for (var i = 1; i <= 32; i++) {
var n = Math.floor(Math.random() * 16.0).toString(16);
guid += n;
if ((i == 8) || (i == 12) || (i == 16) || (i == 20))
guid += "-";
}
return guid;
}
function LogPageView(pageViewType, guid, url) {
if (pageViewType.toLowerCase() == "begin" || pageViewType.toLowerCase() == "end") {
var CookieUserID = document.getElementById("CookieUserID");
var userID = "";
if (document.getElementById("CookieUserID")) {
userID = document.getElementById("CookieUserID").innerHTML;
}
var urlStr = "/Cart/WebServices/PageView.ashx?pageViewType=" + pageViewType + "&guid=" + guid + "&userID=" + userID + "&url=" + url;
$.ajax({
type: "POST",
url: urlStr,
contentType: "application/json; charset=utf-8",
data: "{}",
dataType: 'xml',
success: function(msg) {
try {
}
catch (e) {
//alert(e);
return;
}
},
error: function(result, status) {
if (status == 'error') {
// alert(status);
}
}
});
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Text;
using ZY.Cart.Presentation.Presenters;
using ZY.Cart.Model;
namespace InMainWebSite.WebServices
{
/// <summary>
/// $codebehindclassname$ 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class PageView : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
string type = string.IsNullOrEmpty(context.Request.QueryString["pageViewType"]) ? string.Empty : context.Request.QueryString["pageViewType"].Trim().ToLower();
if(type.Length> 0)
{
PageViewInfo pageViewInfo = new PageViewInfo();
pageViewInfo.Guid = string.IsNullOrEmpty(context.Request.QueryString["guid"]) ? string.Empty : context.Request.QueryString["guid"];
pageViewInfo.UserID = string.IsNullOrEmpty(context.Request.QueryString["userID"]) ? string.Empty : context.Request.QueryString["userID"];
pageViewInfo.Url = string.IsNullOrEmpty(context.Request.QueryString["url"]) ? string.Empty : context.Request.QueryString["url"];
pageViewInfo.IP = PageHelper.IP;
if(type=="begin")
{
PageViewPresenter _presenter = new PageViewPresenter();
_presenter.CreatePageView(pageViewInfo);
}
else if (type == "end")
{
PageViewPresenter _presenter = new PageViewPresenter();
_presenter.UpdatePageView(pageViewInfo);
}
}
}
public bool IsReusable
{
get
{
return false;
}
}
}
}