插件窝 干货文章 EasyWechat 5.5如何获取第三方平台component_verify_ticket?

EasyWechat 5.5如何获取第三方平台component_verify_ticket?

component verify ticket 推送 382    来源:    2025-03-13

在 EasyWechat 5.5 中,获取第三方平台的 component_verify_ticket 是通过监听微信服务器推送的事件来实现的。component_verify_ticket 是微信服务器每隔10分钟推送一次的票据,用于验证第三方平台的身份。

以下是获取 component_verify_ticket 的步骤:

1. 配置第三方平台

首先,你需要在微信开放平台注册并配置第三方平台,获取 AppIDAppSecret,并设置消息接收URL。

2. 设置消息接收URL

在微信开放平台中,设置消息接收URL(例如:https://yourdomain.com/wechat/callback),用于接收微信服务器推送的消息。

3. 编写代码处理推送事件

在 EasyWechat 中,你需要编写代码来处理微信服务器推送的 component_verify_ticket

use EasyWeChat\Factory;

// 配置第三方平台
$config = [
    'app_id' => 'your_app_id',
    'secret' => 'your_app_secret',
    'token' => 'your_token',
    'aes_key' => 'your_aes_key',
    'response_type' => 'array',
];

$app = Factory::openPlatform($config);

// 处理微信服务器推送的消息
$server = $app->server;

$server->push(function ($message) {
    // 处理 component_verify_ticket
    if ($message['InfoType'] === 'component_verify_ticket') {
        $componentVerifyTicket = $message['ComponentVerifyTicket'];

        // 将 component_verify_ticket 保存到数据库或文件中
        // 例如:file_put_contents('component_verify_ticket.txt', $componentVerifyTicket);

        return 'success';
    }
});

$response = $server->serve();

$response->send();

4. 保存 component_verify_ticket

在接收到 component_verify_ticket 后,你需要将其保存到数据库或文件中,以便后续使用。例如:

file_put_contents('component_verify_ticket.txt', $componentVerifyTicket);

5. 使用 component_verify_ticket

在后续的 API 调用中,你需要使用 component_verify_ticket 来获取 component_access_token,然后才能调用其他第三方平台的接口。

$componentVerifyTicket = file_get_contents('component_verify_ticket.txt');

$app = Factory::openPlatform($config);

$componentAccessToken = $app->access_token->getToken($componentVerifyTicket);

6. 部署并测试

将代码部署到服务器,并确保消息接收URL能够正常接收微信服务器推送的消息。你可以通过微信开放平台的“推送测试”功能来测试 component_verify_ticket 的接收情况。

注意事项

  • component_verify_ticket 每隔10分钟会更新一次,因此你需要确保每次接收到新的 component_verify_ticket 后及时更新存储。
  • 确保消息接收URL能够正确处理微信服务器推送的消息,并返回 success,否则微信服务器会认为消息未处理成功,可能会重复推送。

通过以上步骤,你可以在 EasyWechat 5.5 中成功获取并处理 component_verify_ticket