最近项目需要做微信登录,于是利用HTML5+ API Reference的OAuth模块管理客户端的用户登录授权验证功能,允许应用访问第三方平台的资源。
(链接:https://www.dcloud.io/docs/api/zh_cn/oauth.html)
通过HBuilder真机预览,可以调起微信登录并获取到信息,但是在线打包后虽然可以调起微信,但是授权后拿不到成功的返回信息。
ios上报错图如下

安卓上报错图如下

去论坛上搜索解决方法,大多是说需要重置appsecret就可以解决,于是去微信平台重置appsecret后,发现ios上确实可以,但是
安卓上还是继续报上图中的错误,再去论坛上找答案,有说微信分享和微信登录的appsecret存在被覆盖的现象,所以将两个appsecret值同步后

解决问题。(这里发现微信分享里的appsecret值随便填都可以分享成功,但如果需要微信分享和微信登录同时存在的话,那最好还是保证两个值相同)

附代码:(如果需要做登录测试,那么在下次登录前先注销登录一次,否则会直接拿登录信息,有时换了账号拿的信息还是上一用户的)

$scope.wxLoginFn = function(){getService()}// 微信授权登录对象var aweixin = null;// 当前环境支持的所有授权登录对象var auths = null;// 获取登录授权认证服务列表,单独保存微信登录授权对象// 5+APP在plusready事件中调用,uni-app在vue页面的onLoad中调用function getService(){plus.oauth.getServices(function(services){plus.nativeUI.alert("services:"+JSON.stringify(services));auths = services;
            authLogin()}, function(e){plus.nativeUI.alert("获取登录授权服务列表失败:"+JSON.stringify(e));} );}

// 通常登录前需要先调用authorize方法进行授权// 获取微信登录授权对象后可进行登录认证操作function authLogin(){plus.nativeUI.alert('auths:'+JSON.stringify(auths))for(let i = 0; i < auths.length; i++){if(auths[i].id == 'weixin'){aweixin = auths[i];break;}}plus.nativeUI.alert('aweixin:'+JSON.stringify(aweixin))if(!aweixin){plus.nativeUI.alert("当前环境不支持微信登录");return;}if(!aweixin.authResult){aweixin.login(function(e){plus.nativeUI.alert("登录认证成功!"+JSON.stringify(e));authUserInfo()}, function(e){plus.nativeUI.alert("登录认证失败: "+JSON.stringify(e));} );}else{plus.nativeUI.alert("已经登录认证!");}}// 调用authorize、login先授权登录认证// 注销登录认证function authLogout(){console.log('注销登录'+JSON.stringify(aweixin));if(!aweixin){plus.nativeUI.alert("当前环境不支持微信登录");return;}aweixin.logout(function(e){plus.nativeUI.alert("注销登录认证成功!"+JSON.stringify(e));}, function(e){plus.nativeUI.alert("注销登录认证失败: "+JSON.stringify(e));});}// 通常登录前需要先调用authorize方法进行授权,调用login方法进行登录认证// 获取微信登录授权对象后获取用户信息操作function authUserInfo(){if(!aweixin){plus.nativeUI.alert("当前环境不支持微信登录");return;}if(aweixin.authResult){aweixin.getUserInfo( function(e){plus.nativeUI.alert("获取用户信息成功:"+JSON.stringify(aweixin.userInfo));}, function(e){plus.nativeUI.alert("获取用户信息失败: "+JSON.stringify(e));} );}else{plus.nativeUI.alert("未登录认证!");}}// 注销微信登录$scope.exitWxLoginFn = function(){authLogout();}

ps:不要随便重置appsecret,最好先确认项目中是否有用到,否则重置后可能会影响到支付分享。

转载于:https://www.cnblogs.com/muou2125/p/11287510.html

混合应用 微信登录授权 微信登录认证失败 ios PGWXAPI错误-1 code:-100 / 安卓 message:invalid appsecret innerCode:40125...相关推荐

  1. H5页面使用微信网页授权实现登录认证

    在用H5开发微信公众号页面应用时,往往需要获取微信的用户信息,H5页面在微信属于访问第三方网页,因此通过微信网页授权机制,来获取用户基本信息,此处需要用户确认授权才能获取,用户确认授权后,我们可以认为 ...

  2. 【WEB开发】微信网页授权第三方登录接口(WEB登录)

    https://www.cnblogs.com/xuzhengzong/p/8513269.html 本文链接至:http://blog.csdn.net/hxker/article/details/ ...

  3. Vue 微信网页授权自动登录

    项目需求:微信公众号(服务号)访问网页,第一次登录后,再次访问默认自动登录,执行退出后,可重新手动登录. 具体实现如下: 微信公众号 - 设置 - 公众号设置 - 功能设置 - 配置网页授权域名,用于 ...

  4. 解决simnow客户端登录报CTP:客户端认证失败

    新申请的账号,第一次登录客户端时报CTP:客户端认证失败 解决:首页重置密码,用重置后的密码重新在客户端登录即可.

  5. iOS 使用百度的人脸识别登录验证,解决认证失败不跳转界面连续认证,认证相似度对比...

    在使用百度人脸识别出现的问题:小米6调用摄像机是黑白的一个情况,iOS上会出现识别准确性上的问题(多次代开认证,会通过) 人脸识别(活体验证): 1.芝麻认证 : 0.4元/次,需要企业企业认证.不能 ...

  6. 微信公众号开发-使用微信网页授权进行登录并加上过滤器判断是否已登录

    首先你需要阅读一下这篇文档 微信开放文档 你需要去搞一个本地内网穿透,这样你就可以在本地进行调试你的代码. 我用的穿透工具是这个:natapp 你还需要下载一个微信开发者工具 开发者工具下载,因为从手 ...

  7. 微信公众号开发:获取access_tokentoken失败,40164错误

    微信公众号报错: "errcode":40164,"errmsg":"invalid ip xx.xx.xx.xx, not in whitelist ...

  8. qq接入和分享android,Android社交登录授权、分享SDK,支持微信、微博和QQ

    社交登录授权,分享SDK 支持微信.微博.QQ登录授权 微信好友.微信朋友圈.微博.QQ好友.QQ空间分享 Gradlecompile 'com.elbbbird.android:socialsdk: ...

  9. android 微博分享需要测试账号密码,Android社交登录授权、分享SDK,支持微信、微博和QQ...

    社交登录授权,分享SDK 支持微信.微博.QQ登录授权 微信好友.微信朋友圈.微博.QQ好友.QQ空间分享 Gradle compile 'com.elbbbird.android:socialsdk ...

最新文章

  1. 机械转行的都干啥去了?机械转行计算机难吗?
  2. 通过url,获取html内容,并解析
  3. 简议使用业务模型驱动进行软件的设计
  4. 生产环境下,oracle不同用户间的数据迁移。第一部分
  5. 点击桌面计算机图打不开,idf,手把手教你怎么解决电脑桌面图标打不开
  6. pepflashplayer32_25_0_0_127.dll: 0x59952C6D is not a valid instance ID.
  7. Java迭代器中的next()方法
  8. 共享锁和排它锁的用法
  9. python中递归函数写法_python中递归函数如何创建
  10. Web Application Security 网络应用程序安全 - (二)2010年网络安全威胁排行榜TOP 10...
  11. JavaScript 文件下载,二进制下载,文本下载的几种方式
  12. 放入http请求头中的内容如果含有中文必须编码
  13. Android网络请求框架Velley的用法与解析
  14. H3C运维审计系统 故障处理手册(笔记)
  15. 测试行业4年经验,面试进了阿里,二个月后我果断选择裸辞...
  16. 微信小程序:图标的使用(icon)
  17. 怎么彻底清除计算机病毒,Win7旗舰版系统如何才能彻底删除电脑病毒
  18. Google 推出浏览器版Google Voice
  19. TM1637带秒点四位LED显示器模块ARDUINO驱动程序
  20. 时间序列分析(1)-移动平均法

热门文章

  1. 第 17 章 设计模式(3 装饰者模式)
  2. 羽扇纶巾 雄姿英发 中国历史上的十大儒将
  3. 智科模式识别期末大课设:多种方法对数据集进行手写数字识别(数据集:MINIST)
  4. lua根据权重随机test
  5. 管理后台-前端-AngularJS
  6. 云服务器之部署私人云盘
  7. redis安装和启动
  8. (二)python学习笔记之列表入门
  9. URL 重写就是把URL地址重新改写(汗^_^)。
  10. 【网络篇】第十七篇——IP协议详解