zoukankan      html  css  js  c++  java
  • 微信网页授权获取用户OPEN ID 等信息,错误码 48001

    问题描述

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

    解决办法

    https://open.weixin.qq.com/connect/oauth2/authorize?appid=&redirect_uri=&response_type=code&scope=snsapi_base&state=#wechat_redirect
    

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

    问题原因

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


     
    48001含义

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

    • scope=snsapi_base 时,只能用于获取openid,不能获取用户的基本信息
    • scope=snsapi_userinfo时,可以获取用户信息、open_id、union_id(需要绑定微信开放平台)等。

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

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

  • 相关阅读:
    一文看懂Fluentd语法
    mongo 使用聚合合并字段
    加速开发流程的 Dockerfile 最佳实践
    nodejs之RSA加密/签名
    nodejs之https双向认证
    自签证书生成
    白话理解https
    一文看懂k8s Deployment yaml
    基于xtermjs实现的web terminal
    intelliJ 中文设置
  • 原文地址:https://www.cnblogs.com/zoutong/p/13528395.html
Copyright © 2011-2022 走看看