一、该问题的重现步骤是什么?
1. cloud版本想加入一个小程序,有没有相关的例子?看了CaptchaTokenGranter 和SocialTokenGranter 不好拓展?有没有相关的解决方案?
2.
3.
二、你期待的结果是什么?实际看到的又是什么?
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
四、请提供详细的错误堆栈信息,这很重要。
五、若有更多详细信息,请在下面提供。
不好意思,目前还没有相关例子,后续uniapp版本会新增的,还请耐心等候一下。
在这期间推荐先看下这个帖子:https://blog.csdn.net/qq_20280007/article/details/107388319
可以参考SocialTokenGranter,获取到小程序的openid后,将其作为username传递,并且取消password认证便可以了,如果登录期间未获取到openid信息,则后端新建一个初始用户并绑定。
继承 AbstractTokenGrante自己写一个就行了。GRANT_TYPE 自己随便区。
bladex里面的CaptchaTokenGranter 和SocialTokenGranter都不太好改。
然后在BladeTokenGranter中add一下。在系统管理中把这个grant_type配上就可以用了。
就像我们公司就这样实现的苹果app登录
小程序登录和第三方登录其实很相似的。举一反三是可以写出来的。
本质上都是拿一个code、state,和appid、appsecret去换token
具体代码因为公司保密协议不方便透露。
实现的部分代码可以给来看看么?卡住两天了
然后posman访问
抱歉签了保密协议,这个真不能。不过可以给你个思路
小程序登录和扫码登录只有一点不同:
扫码,code是前端调用服务端的接口,通过的重定向获得。
小程序,是直接在小程序那里调用wx.login() 获得code。
除此之外一模一样。
具体可以去开发平台看文档。
然后bladex框架自己实现的第三方登录的配置就不能用了,但是他依赖的JustAuth的实现还是可以用的。如果不知道JustAuth是什么,可以先百度看看。
自己写个配置读取类,配置小程序的appId和appSecret.
然后 继承AbstractTokenGrante自己写一个Granter,使用JustAuth第三方登录成功后,就可以用bladex封装的用户模块的代码,将用户数据入库了。
扫一扫访问 Blade技术社区 移动端