首页 新闻 会员 周边 捐助

用户行为记录

0
悬赏园豆:5 [已解决问题] 解决于 2010-03-11 12:21

 

我希望我的GAE应用能做到保留用户操作痕迹的功能
要实现的效果是: 
不论用户是关闭浏览器,点击系统提供的退出按钮还是直接关闭电脑,都能够记录用户和该应用的交互行为

想做一个GAE-Python应用,其中需要保留用户操作痕迹。 

不论用户是关闭浏览器,点击系统提供的退出按钮还是直接关闭电脑,都能够记录用户和该应用的交互行为

应该怎么做呢?

 

星云外的主页 星云外 | 菜鸟二级 | 园豆:210
提问于:2010-03-09 22:21
< >
分享
最佳答案
0

用python具体怎么写我不知道,因为还没开始学习python语言,不过我可以谈谈我的想法。目前实现这种功能一般都使用两种方式来实现,客户端保存用户行为记录和服务器端保存用户行为记录。前者比较常见,后者相对有很少的网站这样子来处理。前者的实现方式一般采用Cookie和客户端缓存来实现,这种实现方式最为代表性的是google的iGoogle,Amazon等,熟悉这个界面的用户都知道,他会让用户自己设置相关的模块,并保存,但是如果你清楚掉cookie后,你保存的板块就会消失掉了。另外有用客户端的缓存代码片段来实现的,比如人人网的在线聊天,聊天记录保存在客户端的缓存中。

服务器端的实现,可以使用ajax的方式来保存,用户浏览某个组件时就把该浏览记录传回服务器予以存储。 不过该方案会消耗非常多的服务器资源,因此需要慎用。

 

回复补充:服务器端实现,简要说明实现思路.数据库中创建一张表,表中可以为自增Id字段(Id默认主键),用户Id(UserId),在页面上访问行为的带参Url(LinkUrl,带参用于区分一个页面中用户访问多个元素的行为),访问的记录时间(LineDate),基本表结构。然后用户访问页面时记录用户的访问行为实现方式,使用ajax来实现(比如使用jQuey),例举记录用户访问页面上a记录的用户行为,可以使用jQuery轮训出页面的a记录,然后提交到服务器存储到创建的那张数据表中。ajax提交部分可以是

$(function(){

$("a").click(function(){

$.ajax({

url:"ajax.aspx",type:"POST",dataType:"html",data:"这里处理传入参数",success:function(html){/*提交完成*/}

});

});

});

基本就是这样子来操作记录用户行为哦,只是为了说明问题我这里写的简单。

收获园豆:5
西越泽 | 专家六级 |园豆:10775 | 2010-03-09 22:33
感谢卡索 大侠的回答。这个应用需要在服务器端记录用户行为。可不可以进一步说一说如何用Ajax实现呢?
星云外 | 园豆:210 (菜鸟二级) | 2010-03-09 22:43
其他回答(1)
0

除非你写成木马

否则关了浏览器后,B/S的程序是无法记录用户行为的

查尔斯 | 园豆:3832 (老鸟四级) | 2010-03-10 18:10
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册