zoukankan      html  css  js  c++  java
  • 微信公众账号登陆授权开发——2

    开发者自行测试登录授权

    公众号一键登录授权给第三方平台方的技术流程

    授权流程如下图所示:

    下面对其进行详细介绍:

    1、用户进入第三方平台方网站

    一般而言,用户需要先进入第三方平台方网站,如www.ABC.com

    2、第三方平台方获取预授权码
    预授权码是第三方平台方实现授权托管的必备信息,预授权码的获取办法

    问题1这一步就遇到问题了

    3、发布后修改和覆盖现网

    第三方平台方可以在自己的网站首页中放置“微信公众号登录授权”的入口,引导公众号运营者进入第三方平台授权页。网址为https://mp.weixin.qq.com/cgi-bin/componentloginpage?component_appid=xxxx&pre_auth_code=xxxxx&redirect_uri=xxxx,该网址中第三方平台方需要提供第三方平台方appid、预授权码和回调URI

    4、用户确认并同意登录授权给第三方平台方

    用户进入第三方平台授权页后,需要确认并同意将自己的公众号登录授权给第三方平台方,完成授权流程。

    5、授权后回调URI,得到授权码和过期时间

    授权流程完成后,会进入回调URI,并在URL参数中返回授权码和过期时间(redirect_url?auth_code=xxx&expires_in=600)

    问题1的解决办法:(获取预授权码)

    *要获取预授权码必须先得获取到-----第三方平台access_token

    -----------------------------------------------官方文档说明开始---------------------------------------------------------------------

    1、获取第三方平台access_token

    由于第三方平台方可能托管了大量的公众号,第三方平台方安全问题造成的影响会更加严重,故API中增加了2项安全策略。

    1. A)所有API调用端只能是第三方平台申请时填写的白名单客户端IP

    2. B)获取第三方平台令牌(component_access_token),增加了component_verify_ticket参数。component_verify_ticket由公众平台每隔10分钟,持续推送给第三方平台方(在创建公众号第三方平台审核通过后,才会开始推送)。

    该API用于获取第三方平台令牌(component_access_token)

    接口调用请求说明

    http请求方式: POST(请使用https协议) 
    https://api.weixin.qq.com/cgi-bin/component/api_component_token

    POST数据示例:

    {
    "component_appid":"appid_value" ,
    "component_appsecret": "appsecret_value", 
    "component_verify_ticket": "ticket_value" 
    }
       

    请求参数说明
    参数 说明
    component_appid 第三方平台appid
    component_appsecret 第三方平台appsecret
    component_verify_ticket 微信后台推送的ticket,此ticket会定时推送,具体请见本页末尾的推送说明
    返回结果示例

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

    结果参数说明
    参数 说明
    component_access_token 第三方平台access_token
    expires_in 有效期
    -----------------------------------------------官方文档说明结束---------------------------------------------------------------------

    对于component_verify_ticket这个参数我一直没弄明白,所以使用这种post请求方式获取第三方平台的access_token就没能成功。

    但是我找到另外一种途径获取,但这种方式并不是官方给的获取方式。(请慎用)

    在查看微信公众平台接口调试工具时发现,在这里边有一个获取access_token接口的获取。


    通过使用这种get请求也能获取到access_token

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    概念
    Jquery和Aspnet前台控件及后台代码交互
    未能找到引用的组件“Microsoft.Office.Core
    C#操作Excel,调用ApplicationClass.Quit()关闭Excel时,发生异常:Microsoft Office Word 遇到问题需要关闭
    Javasrcipt捕获按键
    使用Interop.Excel生成Excel
    Javasrcipt时间相关函数
    (转)各种纹理贴图技术
    (转)立体纹理
    (转)地形碰撞高度计算
  • 原文地址:https://www.cnblogs.com/blogs-chao/p/4764889.html
Copyright © 2011-2022 走看看