token已经放到authorization了为什么还是不行

token已经放到authorization了为什么还是不行,第1张

token已经放到authorization了还是不行的原因是无法按照规则生成token。本地登录时,没有携带token,直接跳转了。线上访问时,携带token,但是是无效的,就给你了个提示。这种情况,需要有前端逻辑来控制跳转。

解决token无效的方法:

1、需要授权的API,必须在请求头中使用Authorization字段提供token令牌。

2、用户授予第三方应用访问该用户某些资源的权限,在安装手机应用的时候,APP会询问是否允许授予权限访问相册、地理位置等权限。

3、在访问微信小程序时,当登录时,小程序会询问是否允许授予权限获取昵称、头像、地区、性别等个人信息。实现授权的方式有:cookie、session、token、OAuth。

4、需要在mainjs文件里添加axios拦截器然后在请求头中可以发现Authorization的值还是Null,原因就是当你发送的发出的是登录请求,在登录期间服务器没有给你token,如果登录之后调用其他接口再去监听这次请求的话就会发现Authorization的值不再是null了,而是登录后的token。

5、根据授权Authorization的解释,之所以要这么做的原因就是要给token授权访问api接口的权限。

百度百科-Token

那就是要重新添加小程序了。

你说的这个错误代码其实就是说你的小程序没有安装添加完整,需要你去重新添加。

2017年12月28日,微信小程序开放游戏类目以及在首页增加下拉访问小程序入口,并且将“跳一跳”作为微信升级版的开屏内容进行推广,从而让日活人数在年末迅速增长。小程序又好用又不占位置。

        微信小程序因为有自身的用户体系存在,使得项目的用户管理部分在开发和使用过程中容易产生很多困惑。最近的一个项目让我对这类问题整体思考了一下。一家之言,以问答的形式整理出来,给需要的人一点思路。

openId和自己的用户体系应该做成什么关系?

        首先,我们设定一个userId为我们自己项目的用户的唯一标识。那么此时,对于某个用户来说,就有了两个唯一标识,一个是我们自身体系的userId,另一个是openId。在整个项目中,这两个都对应了唯一的用户,即根据其中任何一个都能且只能查询到一个用户。因此我们得出结论:一个openId只能同时绑定一个userId,在我们的用户表中,openId可空但是不可重复。userId不可空不可重复。

        所以,我们可以看到很多app在登录的时候提供了微信登录和微信解绑,我认为前者目的是将openId和userId绑定,后者是将openId删除。

是否允许多微信号登录同一个用户帐号?

    这个问题看似好回答,实际上有一个坑。按照第一个问题的思考,一个openId和一个userId绑定,自然这个微信号和用户绑定,怎么可能多微信登录呢?我们想两个场景:场景一,用户打开小程序,openId自动登录,获取到用户信息,登录成功;场景二,用户在小程序中用手机号验证码登录(此时openId不是手机号对应绑定的openId),理论上也应该能登录成功。

        上面第一个场景没问题。第二个场景下,就会造成此时登录成功的openId和用户系统中保存的openId不一致。开发时,要特别注意第二种情况,为了友好性,我们应该允许用户用同一个微信登录不同的帐号,但是必须要注意一点:无论登录多少帐号,openId只能和一个userId绑定。

        由以上结论也可以得到一个推论:即我们保存和查询用户业务信息时应该尽量使用userId。

微信小程序自动登录怎么做?

        继续思考上面的场景一,我们是怎么做到自动登录的呢?答案是openId,因为这个是微信小程序中唯一身份z明。在appjs中向服务端传入openId,换取userId。如果顺利换取,则登录成功;否则,说明该微信没有绑定用户,跳转到登录页面即可。这样还有一个好处,尽管别的微信登录过你的账户,只要不做微信绑定,下次他也不会自动登录上你的帐号。

如何让微信小程序登录状态失效?

        上面的自动登录有一个问题,不管用户多久没登录,只要openId绑定过user,即可自动登录。某些应用并不希望用户随时都能自动登录。

        我实现的策略是加入一个token。这个token在服务端的缓存中维护,为这个token增加一个失效时间。微信小程序登录成功之后获取一个token,以后每次登录都用这个token换取userId。如果失效期到,则登录失败,跳转到登录页面。

开发中怎么处理微信小程序的登录授权和创建用户?

        微信的授权方式可以说是越来越严格,在此不讨论具体的授权流程。我认为这两个可以同时做,也可以根据需求分开做,比如有些功能必须是登录状态才可以使用,有些功能是授权状态才可以使用。

        关于用户先就写这么多,以后想到了再补充吧。

我在开发中遇到的更多的坑都已经记录在easyDemo小程序中,希望我的demo能给你easy。我还会持续更新easyDemo,欢迎收藏。

以上就是关于token已经放到authorization了为什么还是不行全部的内容,包括:token已经放到authorization了为什么还是不行、微信小程序缺少certToken、微信用户体系和自有用户体系之间的关系等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9748590.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存