如何在无登陆态的情况下,后台分布式实现,用最少的Ajax请求,实现表单安全且无重复的提交?

发布于 2022-09-11 19:48:27 字数 52 浏览 11 评论 0

如何在无登陆态的情况下,后台分布式实现,用最少的Ajax请求,实现表单安全且无重复的提交?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

对风讲故事 2022-09-18 19:48:27

【无登陆】并不等于【分布式必是多Session(会话)】。即使没有登录,也可以给当前会话设置SessionId,从而后端通过共享Session的方式来唯一确定当前会话。

如果完全是前后端没有任何额外的数据(如cookie,特殊的tokenId等)的话,那么理论上是无法实现的。因为HTTP本身是无状态的,同时过来的两个请求,即使数据等等完全一致,你也不能确定是否是同一用户所提交。

还有一种方式,表单页打开时,后端生成一个uuid,并存储到一个数据共享(所有系统都可访问)中间件(如Redis)。然后表单提交时,附带该uuid,且uuid仅一次有效。这样也能在一定程度上达到无重复提交。如果是恶意重复提交的话,这种思路恐怕就不行了~

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文