Javascript 在浏览器中存储令牌 问题=] 根据我的研究,为了防止CSRF攻击,在本地存储中存储web令牌似乎是比使用cookie更可取的方法(我知道本地存储容易受到XSS攻击,尽管这些攻击似乎比CSRF更容易预防)。话虽如此,我仍无法找到任何有关利用本地存储实现这一目的的相关指南 我正在寻求一些帮助,以了解以下内容是如何工作的…… 将服务器签名的令牌传递到浏览器的本地存储的首选方法/工作流是什么 浏览器存储令牌后,如何使用存储的令牌。 我是否需要停止通过JS默认提交表单,然后在每个请求中发送带有authorization:Bearer头的AJAX请求 当用户单击指向该用户拥有的资源的链接时,如何将该令牌发送到服务器以授予对受保护资源的访问权限 工具 前端 HTML5(根据车把编译) JS CSS(从SASS编译) 后端 nodeJS(使用Express)

Javascript 在浏览器中存储令牌 问题=] 根据我的研究,为了防止CSRF攻击,在本地存储中存储web令牌似乎是比使用cookie更可取的方法(我知道本地存储容易受到XSS攻击,尽管这些攻击似乎比CSRF更容易预防)。话虽如此,我仍无法找到任何有关利用本地存储实现这一目的的相关指南 我正在寻求一些帮助,以了解以下内容是如何工作的…… 将服务器签名的令牌传递到浏览器的本地存储的首选方法/工作流是什么 浏览器存储令牌后,如何使用存储的令牌。 我是否需要停止通过JS默认提交表单,然后在每个请求中发送带有authorization:Bearer头的AJAX请求 当用户单击指向该用户拥有的资源的链接时,如何将该令牌发送到服务器以授予对受保护资源的访问权限 工具 前端 HTML5(根据车把编译) JS CSS(从SASS编译) 后端 nodeJS(使用Express),javascript,node.js,local-storage,token,jwt,Javascript,Node.js,Local Storage,Token,Jwt,注意:我希望将来用代码示例编辑这篇文章(一旦我掌握了窍门,lol),以帮助其他像我一样困惑的人将来首选方法是从/users/login request(无论你喜欢,标题还是正文)返回成功响应的令牌。然后将其放入本地存储 这里最重要的是,JWT不能在没有HTTPS的情况下使用。否则,您将最终在不受保护的情况下传递凭据 在获取令牌后,您应该手动将其作为头添加到每个请求中。使用一些js ajax包装器来简化此任务 据我所知,没有办法发送带有元素的自定义标题。所以我最终传递了附加的令牌(一些散列,而不是

注意:我希望将来用代码示例编辑这篇文章(一旦我掌握了窍门,lol),以帮助其他像我一样困惑的人将来

首选方法是从/users/login request(无论你喜欢,标题还是正文)返回成功响应的令牌。然后将其放入本地存储

这里最重要的是,JWT不能在没有HTTPS的情况下使用。否则,您将最终在不受保护的情况下传递凭据

在获取令牌后,您应该手动将其作为头添加到每个请求中。使用一些js ajax包装器来简化此任务


据我所知,没有办法发送带有
元素的自定义标题。所以我最终传递了附加的令牌(一些散列,而不是JWT)和链接
。但这并不是最优的。如果在服务器端呈现页面,最好使用会话。

我更喜欢无状态路由。。。。如果您使用基于cookie的jwt和无状态CSRF保护(我认为paypal为此提供了一个开源库),这种方法在保持无状态身份验证的优势的同时,是否适用于服务器端页面呈现?