微信授权未成功不能获取用户信息

微信授权未成功不能获取用户信息,第1张

微信授权未成功不能获取用户信息原因如下:

1、最常见的原因是手机禁止了微信被其他应用唤醒,可以打开手机设置或者在手机管家中找到应用管理,进入权限管理,点击微信,允许微信被其他应用唤醒即可。

2、可能是网络不好导致的,检查一下手机网络,最好使用WiFi连接。

3、可能是手机运行内存不足,如果游戏的内存过大,也会导致卡顿、授权失败,清理一下手机的后台应用和缓存垃圾,再尝试一次。查看微信授权的方法:1、打开微信,点击右下角的我。2、点击设置,选择隐私选项。3、页面下拉,点击进入授权管理,就可以看到微信所有授权的应用,可以在这里查看有没有授权成功,也可以取消授权。

前端在做微信网页授权时,调用我们已经运行很久的获取微信用户信息接口时,报微信错误码 48001。

将微信网页授权地址中的 scope 参数设置为 snsapi_userinfo 。

根据微信官方提供的《全局返回码说明》,我们查到错误码的解释:

根据错误码的提示,我们排查了公众号后台的配置,发现我们的接口权限已经授权。但是仍会报这个异常。而且,我们授权服务已经上线很久,以前的网页授权业务并没有这个问题。通过与前端沟通,核对了appid、snsapi_base等信息。发现 snsapi_base 与以往的参数不一致。

将 scope 设置为 snsapi_base ,调用微信获取用户信息接口时,由于未获得用户授权同意(snsapi_base为静默授权,不需要用户同意),因而调用接口失败。

最后,要吐槽微信这个返回码文档。并没有说清楚出现这个错误的真正原因。

转字符就可以了:

String nick = 微信昵称

StringBuilder nicksb = new StringBuilder()

int l = nick.length()

for (int i = 0 i < l i++) {

char _s = nick.charAt(i)

if (isEmojiCharacter(_s)) {

nicksb.append(_s)

}

}

nicksb.toString() 这个就可以

public static boolean isEmojiCharacter(char codePoint) {

        return (codePoint == 0x0) ||

 

                (codePoint == 0x9) ||

 

                (codePoint == 0xA) ||

 

                (codePoint == 0xD) ||

 

                ((codePoint >= 0x20) && (codePoint <= 0xD7FF)) ||

 

                ((codePoint >= 0xE000) && (codePoint <= 0xFFFD)) ||

 

                ((codePoint >= 0x10000) && (codePoint <= 0x10FFFF))

 

    }


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

原文地址: http://outofmemory.cn/sjk/6718939.html

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

发表评论

登录后才能评论

评论列表(0条)

保存