目录
实例化
微信服务器推送事件
预授权
获取预授权 Code
获取预授权 URL
API 列表
使用授权码换取公众号的接口调用凭据和授权信息
获取授权方的公众号帐号基本信息
获取授权方的选项设置信息
设置授权方的选项信息
调用授权方 API
实例化
<?php
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;
微信服务器推送事件
公众号第三方平台推送的有四个事件:

授权成功(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:

// 直接跳转
$response = $openPlatform->pre_auth->redirect('https://your-domain.com/callback');
// 获取跳转的 URL
$response->getTargetUrl();
用户授权后会带上 auth_code 跳转到 https://your-domain.com/callback?auth_code=xxxxxxx

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 实例。

当调用授权方 API 后,SDK 内部会自动获取和刷新 AuthorizerAccessToken 有效期。
所以开发者无需处理授权方公众号的接口调用凭据 AuthorizerAccessToken。

// 传递 AuthorizerAppId 和 AuthorizerRefreshToken(注意不是 AuthorizerAccessToken)即可。
$app = $openPlatform->createAuthorizerApplication($authorizerAppId, $authorizerRefreshToken);
// 调用方式与普通调用一致。

转载于:https://www.cnblogs.com/bainiu/p/8022729.html

EasyWeChat微信开放平台第三方平台接入相关推荐

  1. EasyWeChat微信开放平台第三方平台接入流程

    授权流程技术说明: https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/Authorization_Process ...

  2. 微信小程序第三方平台和附近的小程序将开放

    2017 年 3 月底,微信小程序接连放了几个大招:第一招:发布小程序 6 大新能力.第二招:再曝小程序 5 大新能力.第三招:微信小程序第三方平台和附近的小程序.而最后一招小程序第三方平台,虽然在微 ...

  3. 微信开放平台-第三方平台开发配置及常见的问题

    目录 概述 参考文档 开源项目&工具 第三方平台设置 问题及解决方法 概述 本实例:第三方平台+微信公众号(服务号) 微信开放平台-第三方平台,为广大公众号和小程序提供运营服务和行业解决方案. ...

  4. 微信开放平台 第三方平台获取推送的component_verify_ticket php

    在thinkphp6中调用 php7.4 下载微信开发文档里的sdk代码 php版本 但里面有些函数已经弃用 需要修改些(sdk有些地方能与开发环境等稍有出入 需要适当修改 兼容 查看另一篇文档 修改 ...

  5. 快速搭建微信小程序第三方平台基础教程(一)第三方平台是做什么的

    在上个月公司决定分发许多重复的小程序来抢占关键词,当时琢磨了一下两个开发方案想的 第一个方案是通过微信提供的http调用和命令行调用然后写一个shell 脚本,但是想想行不通,因为我如果写一个分发工具 ...

  6. 微信公众账号第三方平台全网发布源码(java)- 实战测试通过

    微信公众账号第三方平台全网发布源码(java)- 实战测试通过 (更多资料,关注论坛:www.jeecg.org) 技术交流请加:289709451.287090836 package org.jee ...

  7. 微信公众平台第三方平台全网发布 java

    小弟初次写,写的不好,大神多多关照 总共分为两部分: 1.授权,微信每10分钟会给第三方平台推送一次,这里有需要用到的 COMPONENT_VERIFY_TICKET,并且需要响应 success. ...

  8. 微信公众平台-第三方平台开发(一)准备工作、开发配置

    平台概述 微信开放平台-第三方平台(简称第三方平台),由微信团队面向所有通过开发者资质认证的第三方开发者提供提供的官方平台. 在得到公众号或小程序管理员授权后,基于该平台,第三方服务商可以通过调用官方 ...

  9. 微赞config.修改php,微信公众号第三方平台 微赞WZ_V100.0版20170612整合包 整合人人商城V2新版+一键升级...

    php+mysql php版本5.3或者以上,OPENSSL必需开启,这是本程序与微信公众号通讯的需求. 我们建议您用云主机!Windows或者Linux皆可,windows主机不推荐用IIS环境,可 ...

  10. 微信公众号第三方平台开发PYTHON教程 PART 2

    github地址:cppfun@wechat-open-third-party-dev 微信公众号第三方平台开发python教程 Part 1 这一节肯定是在第一节的基础上,如果你没有看过第一节,可能 ...

最新文章

  1. IE访问历史记录恢复工具pasco
  2. 关于主键的设计、primary key
  3. keepalived安装与配置_Nginx_Keepalived高可用配置
  4. LeetCode 230. 二叉搜索树中第K小的元素(中序遍历)
  5. 写日历的程序员,你必须弄懂的中国农历算法。
  6. java对象关系_【java类和对象的关系】
  7. 计算机应用技术基础 形考4,最新电大《计算机应用技术基础》形考作业任务01-03网考试题及答案...
  8. 你真的会玩SQL吗?透视转换的艺术
  9. Python爬虫之(六)requests库的用法
  10. 创建 tomcat 服务的镜像
  11. (转)思科VPP源码分析(dpdk node分析)
  12. Cortex-M0详解(2)--寄存器
  13. 93. 复原IP地址
  14. 线性代数——求逆矩阵
  15. 对ABAP程序调优的学习(三)并行并发读取
  16. python3 字典遍历操作
  17. 微软商店、应用、网站无法登录
  18. Ngrok 实现内网穿透教程(Ngrok 和 Sunny-Ngrok )
  19. 前沿 | 中国中小银行都是如何展开数字化转型的?
  20. 教你使用免费的BMFont工具和Photoshop来制作纹理贴图和fnt文件

热门文章

  1. r语言解释回归模型的假设_模型假设-解释
  2. python集群_使用Python集群文档
  3. python 数组合并排重_并排深度学习:Julia vs Python
  4. windows局域网文件共享的使用
  5. onclick 获取img 里面的id_红魔5S游戏手机如何解锁bl获取第三方面具root权限
  6. 字符动图_手把手教你做一个python+matplotlib的炫酷的数据可视化动图
  7. Unity SRP自定义渲染管线 -- 4.Spotlight Shadows
  8. MKL学习——矩阵矩阵操作
  9. caffe框架翻译-理解(转载)
  10. MongoDB查询报错:class com.mongodb.MongoSecurityException: Exception authenticating MongoCredential...