第三方平臺(tái)(TP)是指幫助小程序運(yùn)營(yíng)者進(jìn)行開(kāi)發(fā)、管理、運(yùn)營(yíng)小程序并從此獲取收益的平臺(tái);可在小程序首頁(yè)進(jìn)行注冊(cè),成為企業(yè)類型的智能小程序后即可創(chuàng)建第三方平臺(tái)。小程序運(yùn)營(yíng)者,可以一鍵授權(quán)給第三方平臺(tái),通過(guò)第三方平臺(tái)來(lái)完成業(yè)務(wù)。
小程序授權(quán)給第三方平臺(tái)的技術(shù)實(shí)現(xiàn)流程如下圖:
1、推送 ticket ? ?
出于安全考慮,在第三方平臺(tái)創(chuàng)建審核通過(guò)后,小程序TP平臺(tái)服務(wù)器每隔10分鐘會(huì)向第三方的消息接收地址推送一次 ticket,用于獲取第三方平臺(tái)接口調(diào)用憑據(jù),接收到后必須直接返回字符串 success。?
? ?
2、獲取第三方平臺(tái) access_token ? ?
第三方平臺(tái)通過(guò)自己的 client_id 和 ticket(每10分鐘推送一次的安全 ticket )來(lái)獲取自己的接口調(diào)用憑據(jù)(access_token)。?
3、獲取預(yù)授權(quán)碼 pre_auth_code ? ?
第三方平臺(tái)通過(guò)自己的接口調(diào)用憑據(jù)(access_token)來(lái)獲取用于授權(quán)流程準(zhǔn)備的預(yù)授權(quán)碼(pre_auth_code)。 ? ?
4、引導(dǎo)小程序管理員對(duì)第三方平臺(tái)進(jìn)行授權(quán) ? ?
根據(jù) client_id, pre_auth_code, redirect_uri生 成授權(quán)二維碼。 ? ?
5、獲取授權(quán)碼 authorization_code ? ?
引導(dǎo)小程序管理員掃碼授權(quán),在回調(diào) URL 參數(shù)中返回授權(quán)碼 (authorization_code) 和過(guò)期時(shí)間。 ? ?
6、使用授權(quán)碼換小程序的接口調(diào)用憑據(jù)和授權(quán)信息 ? ?
通過(guò)授權(quán)碼和自己的接口調(diào)用憑據(jù)(access_token),換取小程序的接口調(diào)用憑據(jù)(access_token和用于前者快過(guò)期時(shí)用來(lái)刷新它的 refresh_token)和授權(quán)信息(授權(quán)了哪些權(quán)限等信息)。 ?
??
7、獲取(刷新)授權(quán)小程序的接口調(diào)用憑據(jù) ? ?
通過(guò)自己的接口調(diào)用憑證 access_token 和 refresh_token 來(lái)刷新小程序的接口調(diào)用憑據(jù)。 ? ?
8、獲取小程序基礎(chǔ)信息 ? ?
當(dāng)小程序?qū)Φ谌竭M(jìn)行授權(quán)、取消授權(quán)、更新授權(quán)時(shí),將通過(guò)事件推送告訴開(kāi)發(fā)者。 ? ?
閱讀本文的人還可以閱讀: