功能 #6565

Nigel 更新于 2016-01-21 21:56

之前版本:

目的:为了辅助后续各种个性化功能的实现(以推荐系统为例)

目前了解:

  1. rails日志文件中记录了所有用户操作的记录(默认使用自带的ActiveSupport中的logger记录);
  2. rails中获取session id必须使用cookie传递,不可通过URL传递(rails框架机制,为了安全);
  3. session和cookie都是只能记录少量的数据信息,cookie中的信息不可能永久存储在本地,session中的信息如果不持久化到文件或数据库中也会在生命周期结束后消失。
目前的解决方案及存在的问题:

  1. 将session id对应的用户行为信息持久化到数据库中;
  2. 了解ActiveSupport输出日志的机制,获取我们需要的用户操作信息;或者通过对页面用户操作的对应时间进行后台处理,获取我们需要的相应信息(前者目前没有查到应该在哪儿修改,怎么修改;后者需要考虑每个页面对应的用户操作,比较复杂)。
  3. 由于cookie会在一定时间后消失,因此之前cookie中存储的session id也会消失,这就会导致问题:浏览器新创建的cookie(新session id)如何和我数据库中之前创建的session id对应起来。
请老师、师姐批评指正

当前版本:

目的:为了辅助后续各种个性化功能的实现(以推荐系统为例)

目前了解:


  1. rails日志文件中记录了所有用户操作的记录(默认使用自带的ActiveSupport中的logger记录);
  2. rails中获取session id必须使用cookie传递,不可通过URL传递(rails框架机制,为了安全);
  3. session和cookie都是只能记录少量的数据信息,cookie中的信息不可能永久存储在本地,session中的信息如果不持久化到文件或数据库中也会在生命周期结束后消失。
目前的解决方案及存在的问题:



  1. 将session id对应的用户行为信息持久化到数据库中;
  2. 了解ActiveSupport输出日志的机制,获取我们需要的用户操作信息;或者通过对页面用户操作的对应时间进行后台处理,获取我们需要的相应信息(前者目前没有查到应该在哪儿修改,怎么修改;后者需要考虑每个页面对应的用户操作,比较复杂)。
  3. 由于cookie会在一定时间后消失,因此之前cookie中存储的session id也会消失,这就会导致问题:浏览器新创建的cookie(新session id)如何和我数据库中之前创建的session id对应起来。
请老师、师姐批评指正


返回

© Copyright 2007~2021 国防科技大学Trustie团队 & IntelliDE 湘ICP备 17009477号

问题和建议
还能输入50个字符 提交

加入QQ群

关注微信APP


×