uni-app中授权微信登录(app)

左手的ㄟ右手 2022-11-28 13:15 289阅读 0赞

1.模块授权

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3BhbnppbmE_size_16_color_FFFFFF_t_70

2.填写上面的信息需要在微信公众平台申请一个应用,获取相应的appid和appsecret;

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3BhbnppbmE_size_16_color_FFFFFF_t_70 1

3.代码

  1. appLogin: function() {
  2. uni.getProvider({
  3. service: 'oauth',
  4. success: function(res) {
  5. //支持微信、qq和微博等
  6. if (~res.provider.indexOf('weixin')) {
  7. uni.login({
  8. provider: 'weixin',
  9. success: function(loginRes) {
  10. let access_token = loginRes.authResult.access_token
  11. let openid = loginRes.authResult.openid
  12. console.log('-------获取openid(unionid)-----');
  13. console.log('token',access_token)
  14. console.log('openid',openid)
  15. console.log(JSON.stringify(loginRes));
  16. // 获取用户信息
  17. uni.getUserInfo({
  18. provider: 'weixin',
  19. success: function(infoRes) {
  20. console.log('-------获取微信用户所有-----');
  21. console.log(JSON.stringify(infoRes.userInfo));
  22. }
  23. });
  24. }
  25. });
  26. }
  27. }
  28. });
  29. },

4.其他

①关于code

小程序使用uni.login可以获取到code

而app\h5+不能获取code,但可以获取到access_token、openid之类的

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3BhbnppbmE_size_16_color_FFFFFF_t_70 2

在控制台打印

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3BhbnppbmE_size_16_color_FFFFFF_t_70 3

②查看签名

有可能会因为签名不一致,弹出提示,这时需要查看签名

1.

20200817164905406.png

2.微信公众平台的头部导航 —- 资源中心 —-资源下载 中点击下载一个手机软件,输入应用包名后直接生成复制;watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3BhbnppbmE_size_16_color_FFFFFF_t_70 4

3.输入包名,得到签名

3.watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3BhbnppbmE_size_16_color_FFFFFF_t_70 5

超级坑的地方:

在手机上运行自定义基座得到的openid 和 打正式包得到的openid 不一样!!

正式包得到的openid是正确的,可以用于各种 api 的调用。而自定义基座则会出现各种问题,如openid 与商户appid不匹配

找了很久的问题,实在不知道为什么于是放弃下班回家,第二天打包再测就行了那种感觉真的是很666

发表评论

表情:
评论列表 (有 0 条评论,289人围观)

还没有评论,来说两句吧...

相关阅读

    相关 UNI-APP_APP授权登录

    在App中要实现微信授权则需要在微信公众平台申请一个应用,获取相应的appid和appsecret 在填写申请时有2个地方需要注意: ![在这里插入图片描述][wate