电子商务购物车 - 可以使用用户的 ip 而不是基于 cookie 的 id 吗?
Ecommerce cart - can ip of user be used instead of cookie based id?
我正在开发一个电子商务网站。用户需要能够在登录前将产品添加到购物车,即只有在结帐时才要求用户登录。
-->我知道这可以通过设置会话 ID 并将其用于数据库中的购物车 table 来完成。
我的问题是:
我们可以使用用户的 ip 而不是使用 cookie 变量吗?
IP 将用于购物车 table.The 购物车清理政策等。将与第一种情况相同。
如果是,例如,可能面临的挑战是什么。比如共享电脑。
如果不是,为什么?
- 我提到的第一种方法(使用 cookie)是亚马逊等电子商务网站如何在用户登录之前管理他们的购物车吗?
IP 不是一个有用的标识符,办公室里的许多人会共享它,而在移动网络上,通常有数千部电话都映射到同一个 IP。即使是单个用户也可能在切换无线网络但继续使用您的网站时在许多不同的 IP 之间跳转。
在处理共享计算机时,您不必太担心。将您的 cookie 设置为在一段合理的时间后过期,也许只是几个小时,以避免在浏览器中永久留下足迹。如果人们真的很担心,他们可以随时使用隐私浏览。
如果您想知道亚马逊是如何做这类事情的,请打开您的检查器并观察网络流量,看看分配了哪些 cookie 以及它们持续了多长时间。
所以简短的回答是使用会话并计算出您希望它持续多长时间的时间限制。如果未登录,我通常将这些设置为 48 小时,如果登录则为两周,但这实际上取决于您的市场。
我强烈建议您先为 Ruby 评估 Magento for PHP or Spree 等现成的商务包,然后再从头开始编写自己的电子商务平台。这通常是一项比您一开始预期的要大得多的任务,并且在处理金钱时存在无数的安全问题。
好吧,您已经说过了,但是您可以创建一个随机 'token' 来用于识别客户。有几种方法可以 'maintain state' 使用该令牌,最常见的是使用 cookie。否则在您的网站链接中,您必须附加令牌。但是 - 在结帐过程中,您不需要链接,您可以使用表单按钮完成所有操作,特别是因为您需要填写账单、运输等表格。
因此,对于结帐过程,请考虑在隐藏的表单字段中传递令牌,然后在最重要的步骤中避免使用 cookie。您还可以在订单记录 table 中使用该标记来关联购物车商品。令牌必须有一个随机字符串,但它也可以包含有用的数据,如日期和时间。
我正在开发一个电子商务网站。用户需要能够在登录前将产品添加到购物车,即只有在结帐时才要求用户登录。
-->我知道这可以通过设置会话 ID 并将其用于数据库中的购物车 table 来完成。
我的问题是:
我们可以使用用户的 ip 而不是使用 cookie 变量吗? IP 将用于购物车 table.The 购物车清理政策等。将与第一种情况相同。
如果是,例如,可能面临的挑战是什么。比如共享电脑。 如果不是,为什么?
- 我提到的第一种方法(使用 cookie)是亚马逊等电子商务网站如何在用户登录之前管理他们的购物车吗?
IP 不是一个有用的标识符,办公室里的许多人会共享它,而在移动网络上,通常有数千部电话都映射到同一个 IP。即使是单个用户也可能在切换无线网络但继续使用您的网站时在许多不同的 IP 之间跳转。
在处理共享计算机时,您不必太担心。将您的 cookie 设置为在一段合理的时间后过期,也许只是几个小时,以避免在浏览器中永久留下足迹。如果人们真的很担心,他们可以随时使用隐私浏览。
如果您想知道亚马逊是如何做这类事情的,请打开您的检查器并观察网络流量,看看分配了哪些 cookie 以及它们持续了多长时间。
所以简短的回答是使用会话并计算出您希望它持续多长时间的时间限制。如果未登录,我通常将这些设置为 48 小时,如果登录则为两周,但这实际上取决于您的市场。
我强烈建议您先为 Ruby 评估 Magento for PHP or Spree 等现成的商务包,然后再从头开始编写自己的电子商务平台。这通常是一项比您一开始预期的要大得多的任务,并且在处理金钱时存在无数的安全问题。
好吧,您已经说过了,但是您可以创建一个随机 'token' 来用于识别客户。有几种方法可以 'maintain state' 使用该令牌,最常见的是使用 cookie。否则在您的网站链接中,您必须附加令牌。但是 - 在结帐过程中,您不需要链接,您可以使用表单按钮完成所有操作,特别是因为您需要填写账单、运输等表格。
因此,对于结帐过程,请考虑在隐藏的表单字段中传递令牌,然后在最重要的步骤中避免使用 cookie。您还可以在订单记录 table 中使用该标记来关联购物车商品。令牌必须有一个随机字符串,但它也可以包含有用的数据,如日期和时间。