EasyWeChat 在 yii中简单配置及微信验证
发布时间:2019-04-13 09:17:16作者:wangjian浏览量:1328点赞量:0
EasyWechat文档:https://www.easywechat.com/docs
max-wen/yii2-easy-wechat拓展composer包地址:https://packagist.org/packages/maxwen/yii2-easy-wechat
jianyan74/yii2-easy-wechat拓展composer包地址:https://packagist.org/packages/jianyan74/yii2-easy-wechat
一:在yii中安装EasyWechat
可以参考EsayWechat文档中的在框架中使用选项中内容知道在对应的框架中安装EasyWechat
如上可以知道在yii中安装EasyWechat有两种
一种是jianyan74/yii2-easy-wechat 适用于 EasyWeChat 4.x,另一种是max-wen/yii2-easy-wechat 适用于 EasyWeChat 3.x,这里我选择的是max-wen/yii2-easy-wechat,这里注意下,如果你选择的和我一样是max-wen/yii2-easy-wechat的话,这时候你参考文档时,就要切换下版本了
在yii中安装EasyWechat
composer require max-wen/yii2-easy-wechat
由于我这里安装的是max-wen/yii2-easy-wechat,所以下面我都是针对max-wen/yii2-easy-wechat拓展进行的说明,如果安装的是jianyan74/yii2-easy-wechat拓展的话,你可以根据EasyWechat文档结合jianyan74/yii2-easy-wechat拓展包说明文档进行学习
二:配置EasyWechat
1:在main.php文件中配置使用
'components' => [
'wechat' => [
'class' => 'maxwen\easywechat\Wechat',
],
2:在params.php中配置一些EasyWechat一些必要参数
'WECHAT' => [
/**
* Debug 模式,bool 值:true/false
* 当值为 false 时,所有的日志都不会记录
*/
'debug' => false,
/**
* 账号基本信息,请从微信公众平台/开放平台获取
* https://mp.weixin.qq.com/
*/
'app_id' => 'XXXXX', // AppID
'secret' => 'XXXXX', // AppSecret
'token' => 'XXXXXX', // Token
'aes_key' => '', // EncodingAESKey,兼容与安全模式下请一定要填写!!!
/**
* 指定 API 调用返回结果的类型:array(default)/collection/object/raw/自定义类名
* 使用自定义类名时,构造函数将会接收一个 `EasyWeChat\Kernel\Http\Response` 实例
*/
'response_type' => 'array',
/**
* 日志配置
*
* level: 日志级别, 可选为:debug/info/notice/warning/error/critical/alert/emergency
* permission:日志文件权限(可选),默认为null(若为null值,monolog会取0644)
* file:日志文件位置(绝对路径!!!),要求可写权限
*/
'log' => [
'level' => 'debug',
'permission' => 0777,
'file' => dirname(dirname(__DIR__)) . '/wechat.log',
],
/**
* 接口请求相关配置,超时时间等,具体可用参数请参考:
* http://docs.guzzlephp.org/en/stable/request-config.html
*
* - retries: 重试次数,默认 1,指定当 http 请求失败时重试的次数。
* - retry_delay: 重试延迟间隔(单位:ms),默认 500
* - log_template: 指定 HTTP 日志模板,请参考:https://github.com/guzzle/guzzle/blob/master/src/MessageFormatter.php
*/
'http' => [
'retries' => 1,
'retry_delay' => 500,
'timeout' => 5.0,
// 'base_uri' => 'https://api.weixin.qq.com/', // 如果你在国外想要覆盖默认的 url 的时候才使用,根据不同的模块配置不同的 uri
],
/**
* OAuth 配置
*
* scopes:公众平台(snsapi_userinfo / snsapi_base),开放平台:snsapi_login
* callback:OAuth授权完成后的回调页地址
*/
'oauth' => [
'scopes' => ['snsapi_userinfo'],
'callback' => '',
],
]
三:微信验证
当我们配置完成之后,在公众号的接口配置中填写我们需要进行验证的url
然后我们在对应的url中编写如下代码
<?php
namespace front\controllers;
use Yii;
class WeixinController extends \yii\base\Controller
{
/**
* function: actionIndex
* author: wangjian
* date: 2019/4/10 15:18
* 微信链接校验
*/
public function actionIndex()
{
$app = Yii::$app->wechat->getApp();
$server = $app->server;
$response = $server->serve();
$response->send();
exit();
}
}
编写完如上代码后在微信公众号上进行校验,这时,校验成功
这时候我们的php就接入微信公众号成功了,可以开始微信开发之旅了