代码之家  ›  专栏  ›  技术社区  ›  Lorenzo OnoSendai

带有cookie的购物车生命周期

  •  0
  • Lorenzo OnoSendai  · 技术社区  · 8 年前

    我有一个使用会话的购物车的实现,并希望迁移到基于cookie的购物车。此外,实际上我在会话中存储了完整的购物车,并希望迁移到只有购物车ID在cookie中而内容在数据库中的版本。

    我已经阅读了许多博客文章,甚至有关于这方面的问题,但在某些方面仍然有一些困惑:

    • 饼干的循环怎么样?实际上,我在新会话开始时创建了一个新购物车。然后,我根据客户操作管理会话(添加到购物车、从购物车中删除、结帐时清除)
    • 如何创建唯一的cookieId
    • 处理备份到数据库任务的最佳方法是什么?使用jQuery还是在服务器端处理一切更好?

    例如,我正在使用带有c#的asp.NETMVC。

    1 回复  |  直到 8 年前
        1
  •  4
  •   Win    8 年前

    在我的场景中,我首先将物品临时存储在购物车中。结账成功后,我将商品从购物车移动到 顺序 订单项 表,并删除购物车。

    以下是你可以从我的错误中学到的。

    cookie的生命周期如何?实际上,我创建了一个新的购物车 会话开始。然后,我根据客户操作管理会话 (添加到购物车,从购物车中删除,结帐时清除)

    新会话开始时不要创建cookie。相反,您需要在数据库中创建一个条目,只有在客户将项目添加到购物车之后。那就储存起来 指导

    主要原因是,如果您创建cookie太早,最终会有太多废弃的购物车。

    仅供参考: 您希望安排一项任务,在某个时间段后清理废弃的推车。

    如何创建唯一的cookieId

    使数据库列ID 唯一标识符 .创建新购物车后,将返回的GUID保存在cookie中。

    处理备份到数据库任务的最佳方法是什么?使用 jQuery还是在服务器端处理一切更好?

    您希望从服务器端生成GUID,如上所述。

    不要将整数与标识增量一起使用。它最终会有一个很大的安全漏洞,因为你可以很容易地预测数字。