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分別代表: 消息與菜單權限集 用戶管理權限集 帳號管理權限集 網頁授權權限集 微信小店權限集 多客服權限集 業務通知權限集 微信卡券權限集 |