请教 JWT 的 Token 本地储存和前端请求问题

新手使用Dingo API和JWT开发一个手机网站,按照着DingoAPI和jwt的GitHub wiki文档在做,后台已经实现API的调用,在浏览器地址栏里面带上Token参数请求受保护的资源时,也可以获取到资源,但是在前端实现上遇到较多问题,请教有经验的大牛指导一下。

1、使用jwt时,用户登录成功,获取到一个token值,要保存到客户端本地以便调用时使用,看了很多Github上的例子,都要使用到AngularJS或VUE框架,将token保存到local storage,但我没学过AngularJS,感觉看起来有些费劲,不知道有没有什么更简单的解决方案,也希望能推荐一些较好的代码例子来参考一下。

2、每次GET获取一个URI的时候,JWT的文档介绍有两种方式,一是在浏览器地址栏里面带上token参数,这样在地址栏可见不太好,二是将用bearer token附加到请求的header里面,如果前端用了AngularJS,是可以支持把token附加到header里面,但是我原有的网站都是用jQuery和Ajax的方法发起请求,如果用AngularJS,还要写很多js代码,不知道有没有什么简单的方法实现调用API时,自动附带上Token。

3、token过期之后,怎样去refresh token,刷新的策略该如何设计,我还看过一种说法是用旧的token去换取新的token,但不是很理解这个过程。

4、OAuth2和jwt之间应该如何选择,是两者能否同时使用,还是只选其一?我的理解是API资源受JWT的保护,假如要做社交登录,就需要OAuth验证,验证之后,还是获得一个JWT token,用于访问API资源,不知道这样理解对不对,求介绍两者之间应该怎么选择。

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 2
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!