微信SDK EasySwoole WeChat 2.x - 小程序
EasySwoole WeChat
是一個基于 Swoole 4.x
全協(xié)程支持的微信 SDK 庫
,告別同步阻塞,輕松編寫高性能的微信公眾號/小程序/開放平臺/企業(yè)微信業(yè)務(wù)接口。用戶如果想要使用關(guān)于微信支付業(yè)務(wù)的使用可以查看 EasySwoole Pay 組件。
該組件庫是仿照 easywechat API
實現(xiàn)的協(xié)程安全的 wechat sdk
庫。
用戶可以在一切支持 Swoole
協(xié)程環(huán)境的框架(EasySwoole
、Hyperf
、Swoft
等)中使用,安裝和使用方法請看下文。
舊版組件兼容說明
說明
首先感謝 easywechat
作者們創(chuàng)造的優(yōu)秀項目,但由于在協(xié)程環(huán)境下使用會有潛在的跨協(xié)程問題,故有了此項目。考慮到大多數(shù)用戶的習(xí)慣,我們保留了絕大多數(shù) API
的命名和風(fēng)格習(xí)慣,以便用戶更好地上手使用;但在部分可能存在潛在風(fēng)險的地方, 我們則進行了重新設(shè)計,以保障協(xié)程環(huán)境下的運行安全。
組件要求
- php >= 7.2
- ext-swoole: ^4.4.19 (推薦使用 Swoole 4.4.23)
- ext-openssl: *
- ext-json: *
- ext-libxml: *
- ext-simplexml: *
- ext-openssl: *
- psr/log: ^1.1
- psr/http-message: ^1.0
- psr/simple-cache: ^1.0
- pimple/pimple: ^3.0
- easyswoole/utility: ^1.1
注意:在編譯安裝
Swoole
擴展時,請務(wù)必把編譯參數(shù)--enable-openssl
加上,以啟用SSL
支持
安裝方法
$ composer require easyswoole/wechat
倉庫地址
常見問題匯總
為了讓用戶在微信公眾平臺開發(fā)的道路上少掉坑,我們在這里將使用此組件進行開發(fā)時遇到的各種問題進行匯總,并給出對應(yīng)的解決辦法。這樣用戶就可以更效地進行開發(fā)了。
時區(qū)不對
- 報錯情形如下:
Setting The Correct Timezone In CentOS And Ubuntu Servers With NTP
。 - 解決方法:使用命令
date
可以在服務(wù)器上查看當(dāng)前時間,如果發(fā)現(xiàn)時區(qū)不對則需要修改時區(qū)。
redirect_url 參數(shù)錯誤
-
出現(xiàn)原因:這是由于程序使用了 網(wǎng)頁授權(quán) 而公眾號沒有正確配置 【網(wǎng)頁授權(quán)域名】 所致。此時你需要登錄微信公眾平臺,在 【開發(fā)】 -> 【接口權(quán)限】 頁面找到 網(wǎng)頁授權(quán)獲取用戶基本信息 進行配置并保存。
-
解決方法:
- 網(wǎng)頁授權(quán)域名應(yīng)該為通過
ICP
備案的有效域名,否則保存時無法通過安全監(jiān)測。 - 網(wǎng)頁授權(quán)域名即程序完成授權(quán)獲得授權(quán)
code
后跳轉(zhuǎn)到的頁面的域名,一般情況下為你的業(yè)務(wù)域名。 - 網(wǎng)頁授權(quán)域名配置成功后會立即生效。
- 公眾號的網(wǎng)頁授權(quán)域名只可配置一個,請合理規(guī)劃你的業(yè)務(wù),否則你會發(fā)現(xiàn) …… 授權(quán)域名不夠用哈。
- 網(wǎng)頁授權(quán)域名應(yīng)該為通過
JSAPI config: invalid url domain
- 出現(xiàn)原因:在使用
JS-SDK
進行開發(fā)時,每個頁面都需要調(diào)用wx.config()
方法配置JSPAI
參數(shù)。如果沒有正確配置JSAPI
安全域名并且開啟了調(diào)試模式,此時就報此錯誤。 - 解決方法:遇到這個問題時,開發(fā)者需要登錄微信公眾平臺,進入 【公眾號設(shè)置】->【功能設(shè)置】 頁面,將項目所使用的域名添加至 【JSAPI 安全域名】 列表中。
- 注意事項說明:
- 一個公眾號同時最多可綁定三個安全域名,并且這些域名必須為通過
ICP
備案的一級或一級以上的有效域名。 -
JSAPI
安全域名每個月限修改三次,修改任何一個都算,所以,請謹(jǐn)慎操作。
- 一個公眾號同時最多可綁定三個安全域名,并且這些域名必須為通過