在基于浏览器的应用程序中保存JWT以及如何使用它的位置
- 论坛
- 在基于浏览器的应用程序中保存JWT以及如何使用它的位置
10 浏览
在基于浏览器的应用程序中保存JWT以及如何使用它的位置
我正在尝试在我的身份验证系统中实现JWT,并且有几个问题。为了存储令牌,我可以使用cookies,但也可以使用localStorage或sessionStorage。
哪个选择最好?
我已经了解到JWT可以防止CSRF。然而,如果我将JWT令牌保存在cookie存储中,我无法想象它如何防止CSRF。
它如何防止CSRF呢?
更新1
我看到了一些用法示例,如下所示:
curl -v -X POST -H "Authorization: Basic VE01enNFem9FZG9NRERjVEJjbXRBcWJGdTBFYTpYUU9URExINlBBOHJvUHJfSktrTHhUSTNseGNh"
当我从浏览器向服务器发起请求时,我该如何实现这个呢?我还看到一些人在URL中实现了令牌:
http://exmple.com?jwt=token
如果我通过AJAX发送请求,我可以设置一个类似于jwt:[token]
的头部,然后我可以从头部读取令牌。
更新2
我安装了Google Chrome浏览器的Advanced REST Client扩展,并能够将令牌作为自定义头部传递。在使用Javascript向服务器发起GET请求时是否可以设置这个头部数据?