Download the PHP package andphp/hyperf-easywechat6 without Composer
On this page you can find all versions of the php package andphp/hyperf-easywechat6. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download andphp/hyperf-easywechat6
More information about andphp/hyperf-easywechat6
Files in andphp/hyperf-easywechat6
Informations about the package hyperf-easywechat6
Notice
-
easywechat6用symfony/http-client相关组件,替换了之前4,5等版本的Guzzle请求组件,Symfony Http Client在常驻内存的服务中使用时,HttpClient会因为多个协程共用而报错。 andphp/hyperf-easywechat6包使用hyperf的ClassMap替换了InteractWithHttpClient中的HttpClient对象实例,使得不同协程为不同的请求实例,同一协程上下文中获取到的为同一请求实例。
-
andphp/hyperf-easywechat6包用hyperf的容器获得Hyperf\HttpServer\Contract\RequestInterface对应的Hyperf\HttpServer\Request,替换了easywechat6中的同样基于PSR-7规范request;获得Psr\SimpleCache\CacheInterface对应的缓存类,替换easywechat6中同样基于PSR-16规范的cache。
-
建议使用Swoole 4.7.0 及以上版本,并且开启 native curl 选项。easywechat4,5版本使用的是Guzzle,该组件默认使用Curl,如果开启navie curl,并修改常量 define('SWOOLE_HOOK_FLAGS', SWOOLE_HOOK_ALL | SWOOLE_HOOK_CURL),就不用替换Guzzle中的handler。easywechat6则使用symfony/http-client包,它会根据当前环境,按CurlHttpClient(Curl,如果安装了curl扩展),AmpHttpClient(Amp HTTP/2 Support)和NativeHttpClient(Stream)的顺序返回http客户端。 拿hyperf官方 Hyperf\Guzzle\CoroutineHandler handler举例来说,这个handler里会new一个继承自Swoole\Coroutine\Http\Client 的协程客户端HttpClient,这个就解释了上面提到的HttpClient会因为多个协程共用而报错和easywechat4,5版本如果换guzzle handler后无需再classmap替换。
- 建议安装easywechat6.11.1(>=)以上版本,从该版本开始加入了主动请求和异步通知的验签。
hyperf-easywechat6
微信 SDK for Hyperf, 基于 w7corp/easywechat
安装
~~~shell script composer require andphp/hyperf-easywechat6
## 配置
1. 发布配置文件
~~~shell script
php ./bin/hyperf.php vendor:publish andphp/hyperf-easywechat6
- 修改应用根目录下的
config/autoload/wechat.php
中对应的参数即可。 - 每个模块基本都支持多账号,默认为
default
。
使用
接收普通消息例子:
注意:一定是
Router::addRoute
, 因为微信服务端认证的时候是GET
, 接收用户消息时是POST
! 然后创建控制器WeChatController
:
使用外观
更多 SDK 的具体使用请参考:https://easywechat.com
License
MIT