1,获取第三方平台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 | 有效期 |
2,获取预授权码
http请求方式: POST(请使用https协议)
https://api.weixin.qq.com/cgi-bin/component/api_create_preauthcode?component_access_token=xxx
POST数据示例:
{
"component_appid":"appid_value"
}
请求参数说明
参数 | 说明 |
---|---|
component_appid | 第三方平台方appid |
返回结果示例
{
"pre_auth_code":"Cx_Dk6qiBE0Dmx4EmlT3oRfArPvwSQ-oa3NL_fwHM7VI08r52wazoZX2Rhpz1dEw",
"expires_in":600
}
结果参数说明
参数 | 说明 |
---|---|
pre_auth_code | 预授权码 |
expires_in | 有效期,为20分钟 |
3,引导进入授权页面
在任何一个html或者jsp页面,加一个按钮,按钮的响应地址为:
https://mp.weixin.qq.com/cgi-bin/componentloginpage?component_appid=xxxx&pre_auth_code=xxxxx&redirect_uri=xxxx
该网址中第三方平台方需要提供第三方平台方appid、预授权码和回调URI
4,授权后回调URI,得到授权码和过期时间
授权流程完成后,会进入回调URI,并在URL参数中返回授权码和过期时间(redirect_url?auth_code=xxx&expires_in=600)
5,使用授权码换取公众号的授权信息
接口调用请求说明
http请求方式: POST(请使用https协议)
https://api.weixin.qq.com/cgi-bin/component/api_query_auth?component_access_token=xxxx
POST数据示例:
{
"component_appid":"appid_value" ,
" authorization_code": "auth_code_value"
}
请求参数说明
参数 | 说明 |
---|---|
component_appid | 第三方平台appid |
authorization_code | 授权code,会在授权成功时返回给第三方平台,详见第三方平台授权流程说明 |
返回结果示例
{
"authorization_info": {
"authorizer_appid": "wxf8b4f85f3a794e77",
"authorizer_access_token": "QXjUqNqfYVH0yBE1iI_7vuN_9gQbpjfK7hYwJ3P7xOa88a89-Aga5x1NMYJyB8G2yKt1KCl0nPC3W9GJzw0Zzq_dBxc8pxIGUNi_bFes0qM",
"expires_in": 7200,
"authorizer_refresh_token": "dTo-YCXPL4llX-u1W1pPpnp8Hgm4wpJtlR6iV0doKdY",
"func_info": [
{
"funcscope_category": {
"id": 1
}
},
{
"funcscope_category": {
"id": 2
}
},
{
"funcscope_category": {
"id": 3
}
}
]
}
结果参数说明
参数 | 说明 |
---|---|
authorization_info | 授权信息 |
authorizer_appid | 授权方appid |
authorizer_access_token | 授权方令牌(在授权的公众号具备API权限时,才有此返回值) |
expires_in | 有效期(在授权的公众号具备API权限时,才有此返回值) |
authorizer_refresh_token | 刷新令牌(在授权的公众号具备API权限时,才有此返回值),刷新令牌主要用于公众号第三方平台获取和刷新已授权用户的access_token,只会在授权时刻提供,请妥善保存。 一旦丢失,只能让用户重新授权,才能再次拿到新的刷新令牌 |
func_info | 公众号授权给开发者的权限集列表(请注意,当出现用户已经将消息与菜单权限集授权给了某个第三方,再授权给另一个第三方时,由于该权限集是互斥的,后一个第三方的授权将去除此权限集,开发者可以在返回的func_info信息中验证这一点,避免信息遗漏),1到8分别代表: 消息与菜单权限集 用户管理权限集 帐号管理权限集 网页授权权限集 微信小店权限集 多客服权限集 业务通知权限集 微信卡券权限集 |