收藏
回答

微信公众号授权管理无法添加第三方小程序平台?

公众号授权小程序平台目前百度都是通过接口请求出来后生成二维码让公众号管理员扫码的

1.获取公众号 token

https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

2.获取预授权码

https://api.weixin.qq.com/cgi-bin/component/api_create_preauthcode?access_token=ACCESS_TOKEN

3.获取 redirect_uri

4.公众号授权小程序

https://mp.weixin.qq.com/cgi-bin/componentloginpage?component_appid=wxb89f4e36fd2f6930&pre_auth_code=xxxxx&redirect_uri=xxxx&auth_type=xxx

即可生成二维码,扫码授权

问题是:redirect_uri 是如何获取到,有没有详细步棸,各位有其他办法可以授权吗,谢谢


最后一次编辑于  2023-05-28
回答关注问题邀请回答
收藏

2 个回答

  • Hlxuan.
    Hlxuan.
    2023-05-28

    你这些都是在哪里看的?

    1、这个获取到的是网页授权里面的access_token,并不是公众号的access_token ,参考文档:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html

    2、后面这些是第三方平台的API,是将公众号/小程序授权给第三方平台用的,并不是将公众号授权给小程序,参考文档:https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/

    3、redirect_uri 是回调url,是你自己的填写的一个网址。

    简单来说,就是管理员授权成功后,页面会自动跳转到这个网址并在URL 参数中返回授权码和过期时间。

    参考下文档:https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/2.0/api/Before_Develop/Authorization_Process_Technical_Description.html

    2023-05-28
    有用 1
    回复 19
    • 彬
      2023-05-28
      1.有道理,公众号授权就是授权给小程序(第三方平台)谢谢提醒2.我自己填写的网址,填写https://xxxx,具体是什么,有例子,原来我的无知,这个我不是很懂。谢谢
      2023-05-28
      回复
    • Hlxuan.
      Hlxuan.
      2023-05-28回复
      我刚刚重新编辑了下回复,刷新下页面看看。
      2023-05-28
      回复
    • 彬
      2023-05-28回复Hlxuan.
      你这样说,我更懵逼了,更看不懂了
      2023-05-28
      回复
    • 彬
      2023-05-28回复Hlxuan.
      请问,在第一步是,redirect_uri如何获取
      2023-05-28
      回复
    • Hlxuan.
      Hlxuan.
      2023-05-28回复
      你后面发的API是第三方平台专用的,无法使用公众号/小程序帐号调用,只能使用「微信开放平台」上面第三方平台的APPID调用。
      2023-05-28
      回复
    查看更多(14)
  • 彬
    2023-05-28

    一、公众号网页授权

    1.第一步:用户同意授权,获取code

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

    参数说明

    appid是公众号的唯一标识

    redirect_uri是授权后重定向的回调链接地址, 请使用 urlEncode 对链接进行处理response_type是返回类型,请填写codescope是应用授权作用域,

    snsapi_base (不弹出授权页面,直接跳转,只能获取用户openid),

    snsapi_userinfo (弹出授权页面,可通过openid拿到昵称、性别、所在地。并且, 即使在未关注的情况下,只要用户授权,也能获取其信息 )

    state否重定向后会带上state参数,开发者可以填写a-zA-Z0-9的参数值,最多128字节

    #wechat_redirect是无论直接打开还是做页面302重定向时候,必须带此参数

    forcePopup否强制此次授权需要用户弹窗确认;默认为false;需要注意的是,若用户命中了特殊场景下的静默授权逻辑,则此参数不生效



    2.通过code换取网页授权access_token

    https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

    appid是公众号的唯一标识

    secret是公众号的appsecret

    code是填写第一步获取的code参数

    grant_type是填写为authorization_code


    第三步:刷新access_token(如果需要)

    appid是公众号的唯一标识

    grant_type是填写为refresh_tokenref

    resh_token是填写通过access_token获取到的refresh_token参数


    第四步:拉取用户信息(需scope为 snsapi_userinfo)

    access_token网页授权接口调用凭证,注意:此access_token与基础支持的access_token不同

    openid用户的唯一标识

    lang返回国家地区语言版本,zh_CN 简体,zh_TW 繁体,en 英语


    二、公众号授权第三方平台:

    1.步骤一、前往微信开放平台-第三方平台-详情-开发配置,完成权限集与开发资料的配置。2.
    2.获取令牌
    POST https://api.weixin.qq.com/cgi-bin/component/api_component_token
    

    返回结果示例:

    {
      "component_access_token": "61W3mEpU66027wgNZ_MhGHNQDHnFATkDa9-2llqrMBjUwxRSNPbVsMmyD-yq8wZETSoE5NQgecigDrSHkPtIYA",
      "expires_in": 7200
    }
    

    3.预授权码

    POST https://api.weixin.qq.com/cgi-bin/component/api_create_preauthcode?component_access_token=COMPONENT_ACCESS_TOKEN
    

    4.准备“授权回调 URI”,然后按照官方文档规则生成PC端的授权二维码或者移动端的授权链接,详情请看下方说明

    5.、公众号/小程序管理员扫码或者访问移动端授权链接,确认同意授权给第三方平台。(如果该第三方平台帐号尚未全网发布,则需要先将要用于测试的公众号或者小程序加入第三方平台-开发资料的“授权测试公众号/小程序列表”。)

    6.、管理员授权确认之后,授权页会自动跳转进入回调 URI,并在 URL 参数中返回授权码和过期时间(redirect_url?auth_code=xxx&expires_in=600)。


    7.公众号授权小程序第三方平台

    https://mp.weixin.qq.com/cgi-bin/componentloginpage?component_appid=xxxx&pre_auth_code=3.预授权码

    &redirect_uri=在第六步棸中&auth_type=xxx


    8.步骤六、调用接口生成authorizer_access_token,然后以该token调用公众号或小程序的相关 API。





    2023-05-28
    有用
    回复
登录 后发表内容