【问题标题】:Authenticating guest/anonymous users in SPAs在 SPA 中对访客/匿名用户进行身份验证
【发布时间】:2021-04-15 07:10:31
【问题描述】:

我正在使用 react 和 laravel 创建一个电子商务商店。用户身份验证是通行证和 jwt 令牌,但我想知道保存来宾用户信息(例如购物车物品)的最佳做法是什么,以及... LocalStorage 是一个选项,但是如果我们需要分析数据怎么办 另一种选择是使用 cookie 和会话,在这种情况下,这违反了宁静...

【问题讨论】:

  • 这是非常基于意见的。我的意见是您可以向来宾用户颁发令牌,并且您的客户端可以确保始终在每个请求上发送令牌。这样你就可以在没有 cookie 的情况下保持某种“会话”打开
  • 是否有开箱即用的 laravel 身份验证包(如护照)实现?如何区分具有不同权限的登录令牌和访客令牌。奇怪的是我找不到关于这种事情的任何信息,好像没有人需要攻击访客用户......
  • 就我个人而言,我只会创建一个新的用户模型,将模型标记为“访客”用户并发出令牌。然后每周扫一次访客用户什么的。如果用户想注册到您的网站但您是对的,这也将允许您轻松地将访客用户帐户转换为普通用户帐户,但我认为目前还没有行业标准的方式来做到这一点。做自己的事。

标签: reactjs laravel jwt


【解决方案1】:

如你所说;在 LocalStorage 中保留访客购物车物品以及收藏夹(如果有的话)之类的东西是很好的解决方案;这样一来,您就不会让您的后端保持忙碌,也不会丢失客户的数据,比如说,如果您希望客人注册以完成他们的购买。

用于分析部分;您可以运行单独的分析逻辑并将其发送到 Google Analytics(如果编写自己的工作量太大)。查看 react-ga 包。您可以跟踪事件,如商品页面上的滚动位置、商品添加到购物车的次数等。

https://www.freecodecamp.org/news/performance-and-user-tracking-in-react-with-google-analytics/

【讨论】:

  • 感谢您的回答和精彩的文章分享,但我不只是在寻找解决方案,而是在寻找最好的方法,某种行业标准(最佳实践)无状态或有状态令牌的字段。
  • 对不起,我不完全了解行业标准;但可以肯定的是,这取决于项目(需求、公司、时间、访客数量..)如果它是一家大公司,不要关心成本、维护、时间和人员;我将使用我自己的分析逻辑创建一个单独的后端来保存购物车物品、带有访客令牌的收藏夹。如果它只是一个常规项目并且我想让事情变得更容易,那么肯定会去 LocalStorage 路径,因为不认为访客令牌是必要的。将数据保存在用户浏览器中,我收集项目分析并发送给 Google。我以前在一个小型精品店网站上做过 LocalStorage。
猜你喜欢
  • 2016-10-31
  • 1970-01-01
  • 1970-01-01
  • 2017-05-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-08
  • 2021-04-28
相关资源
最近更新 更多