100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 微信第三方平台服务器 EasyWeChat微信开放平台第三方平台接入

微信第三方平台服务器 EasyWeChat微信开放平台第三方平台接入

时间:2022-12-21 03:56:40

相关推荐

微信第三方平台服务器 EasyWeChat微信开放平台第三方平台接入

目录

实例化

微信服务器推送事件

预受权

获取预受权 Code

获取预受权 URL

API 列表

使用受权码换取公众号的接口调用凭据和受权信息

获取受权方的公众号账号基本信息

获取受权方的选项设置信息

设置受权方的选项信息

调用受权方 API

实例化

use EasyWeChat\Foundation\Application;

$options = [

// ...

'open_platform' => [

'app_id' => 'component-app-id',

'secret' => 'component-app-secret',

'token' => 'component-token',

'aes_key' => 'component-aes-key'

],

// ...

];

$app = new Application($options);

$openPlatform = $app->open_platform;

微信服务器推送事件

公众号第三方平台推送的有四个事件:php

受权成功(authorized)

受权更新(updateauthorized)

受权取消(unauthorized)

推送 ComponentVerifyTicket(component_verify_ticket)

在公众号第三方平台建立审核经过后,微信服务器会向其“受权事件接收URL”每隔 10 分钟推送一次 component_verify_ticket。数据库

SDK 内部已实现缓存 component_veirfy_ticket,开发者无需另行处理该事件。

其他事件须要开发者自行处理。缓存

注:须要在URL路由中写上触发代码,而且注册路由后须要等待微信服务器推送 component_verify_ticket,才有权限进行其余操做,不然报”Component verify ticket does not exists.”

Example:服务器

use EasyWeChat\OpenPlatform\Guard;

$server = $openPlatform->server;

$server->setMessageHandler(function($event) use ($openPlatform) {

// 事件类型常量定义在 \EasyWeChat\OpenPlatform\Guard 类里

switch ($event->InfoType) {

case Guard::EVENT_AUTHORIZED: // 受权成功

$authorizationInfo = $openPlatform->getAuthorizationInfo($event->AuthorizationCode);

// 保存数据库操做等...

case Guard::EVENT_UPDATE_AUTHORIZED: // 更新受权

// 更新数据库操做等...

case Guard::EVENT_UNAUTHORIZED: // 受权取消

// 更新数据库操做等...

}

});

$response = $server->serve();

$response->send(); // Laravel 里请使用:return $response;

预受权

获取预受权 Code

Example:微信

$openPlatform->pre_auth->getCode();

获取预受权 URL

Example:app

// 直接跳转

$response = $openPlatform->pre_auth->redirect('https://your-/callback');

// 获取跳转的 URL

$response->getTargetUrl();

用户受权后会带上 auth_code 跳转到 https://your-/callback?auth_code=xxxxxxxdom

API 列表

使用受权码换取公众号的接口调用凭据和受权信息

// 使用受权码换取公众号的接口调用凭据和受权信息

// Optional: $authorizationCode 不传值时会自动获取 URL 中 auth_code 值

$openPlatform->getAuthorizationInfo($authorizationCode = null);

获取受权方的公众号账号基本信息

$openPlatform->getAuthorizerInfo($authorizerAppId);

获取受权方的选项设置信息

$openPlatform->getAuthorizerOption($authorizerAppId, $optionName);

设置受权方的选项信息

$openPlatform->setAuthorizerOption($authorizerAppId, $optionName, $optionValue);

调用受权方 API

经过该方法会得到一个 \EasyWeChat\Foundation\Application 实例。code

当调用受权方 API 后,SDK 内部会自动获取和刷新 AuthorizerAccessToken 有效期。

因此开发者无需处理受权方公众号的接口调用凭据 AuthorizerAccessToken。component

// 传递 AuthorizerAppId 和 AuthorizerRefreshToken(注意不是 AuthorizerAccessToken)便可。

$app = $openPlatform->createAuthorizerApplication($authorizerAppId, $authorizerRefreshToken);

// 调用方式与普通调用一致。orm

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。