电子商务网站中的会话,数据库或cookie

时间:2013-05-14 17:22:50

标签: asp.net e-commerce state-management

我正在创建我的第一个eCommerce网站。经过大量搜索后,我对是否使用sessionDBcookie感到困惑。

  • 有人说session是最好的,因为不是每个用户都购买了购物车中的内容,DB会非常沉重。
  • 有人说应该使用DB,以便购物车数据会保留在不同的sessions中。

最佳选择是什么?大多数网站做什么?

注意:用户必须登录才能购买。

编辑那么,当用户在购物车中添加内容时,我将其插入到具有userID外键的DB TempTable中(用户必须登录才能购买东西)。当用户签出时,该表中的记录将被删除并插入到一个perminent表中。

  • 如果用户离开电脑几个小时,他必须登录并且所有数据都在那里(会话问题已解决)。
  • 如果他使用另一台电脑,他必须登录,所有数据都将在那里(Cookie问题已解决)。
  • 如果他删除了Cookie,数据仍然存在(Cookie问题已解决)。

这是一项好技术吗?

1 个答案:

答案 0 :(得分:3)

就我个人而言,我不会依赖会议来举行一个篮子。客户经常可以在网站上花时间,然后徘徊 - 也许是从他们的办公桌上。如果发生这种情况,他们已经离开了他们的浏览器并且会话到期了,那么他们的购物车也是如此......

还有很多其他原因。也许他们开始购物,关闭浏览器,又回到了一次又一次又开始购物了。

我倾向于将他们的购物车存放在数据库中,并将其ID存储在他们的cookie中。当用户回来时,请阅读cookie并获取他们的购物车。他们可以继续前进。购买购物车时清除此cookie,因此您不允许他们编辑购买的购物车。

我确信这也有它的缺点 - 禁用饼干等 - 虽然我个人尝试为群众提供更多的服务,而不是非常罕见..

我的观点......