特征:
-
統一管理:
- 可以統一管理和操作多個公眾號和小程序,提供批量化、集中化的服務。
-
代開發和運營:
- 為公眾號和小程序提供代開發和運營服務,例如提供自動回復、模板消息、用戶管理等功能。
-
接口調用:
- 通過微信開放平臺提供的API接口,進行第三方授權、消息管理、用戶管理等操作。
-
Component Access Token:
- 使用Component Access Token代替單個公眾號或小程序的Access Token來調用API接口,實現批量管理。
-
消息與事件接收:
- 可以接收來自公眾號和小程序的事件推送和消息推送,進行集中處理。
創建微信開放平臺(第三方平臺)的步驟
-
注冊微信開放平臺賬號:
- 前往微信開放平臺官網,注冊并登錄微信開放平臺賬號。
-
創建第三方平臺:
- 在開放平臺上創建第三方平臺,獲取平臺的AppID和AppSecret。
-
開發與配置:
- 配置第三方平臺的服務器URL,用于接收微信服務器推送的ComponentVerifyTicket。
- 開發服務器程序,處理微信服務器的各種推送和請求。
-
獲取ComponentVerifyTicket:
- 微信服務器會定期向第三方平臺推送ComponentVerifyTicket,第三方平臺需要接收并保存該ticket,用于后續的接口調用。
-
獲取Component Access Token:
- 使用ComponentVerifyTicket通過API接口獲取Component Access Token,這是調用微信開放平臺API的憑證。
-
第三方授權:
- 引導公眾號或小程序的運營者進行授權,將其公眾號或小程序授權給第三方平臺,第三方平臺即可代為管理和操作。
常見的API調用
-
獲取Component Access Token:
public async Task<string> GetComponentAccessTokenAsync(string componentAppId, string componentAppSecret, string componentVerifyTicket)
{
??? var url = "https://api.weixin.qq.com/cgi-bin/component/api_component_token";
??? var data = new
??? {
??????? component_appid = componentAppId,
??????? component_appsecret = componentAppSecret,
??????? component_verify_ticket = componentVerifyTicket
??? };
??? var response = await client.PostAsJsonAsync(url, data);
??? var json = await response.Content.ReadAsAsync<JObject>();
??? return json["component_access_token"].ToString();
} -
獲取預授權碼:
public async Task<string> GetPreAuthCodeAsync(string componentAccessToken, string componentAppId)
{
??? var url = $"https://api.weixin.qq.com/cgi-bin/component/api_create_preauthcode?component_access_token={componentAccessToken}";
??? var data = new
??? {
??????? component_appid = componentAppId
??? };
??? var response = await client.PostAsJsonAsync(url, data);
??? var json = await response.Content.ReadAsAsync<JObject>();
??? return json["pre_auth_code"].ToString();
}