本Demo的微信相关功能都基于 EasyWeChat 扩展包,该扩展包几乎包含所有微信开发相关功能。有关微信开发的注意事项/坑个人总结了以下几点,希望对大家有所帮助:
- 配置好微信公众平台/微信支付/企业微信相关配置。例如:app_id,app_secret,token,aes_key,IP白名单,授权域名,扫码通知地址等等。
- 确保配置和自己的环境一致。有可能会犯的错误:配置的是http,实际是https;配置的是xxx.com域名,实际是www.xxx.com域名。
- 确保程序的参数配置和微信公众平台/微信支付/企业微信相关配置一致,例如app_id,app_secret等
- 公众号/企业微信类的确保自己的域名已备案,并且没有被腾讯拉入黑名单;小程序确保域名备案的同时必须为https。
- 验证文件在框架中应该放置在 /public 目录下;关于各种目录的配置,注意微信的规则。
- EasyWeChat扩展包的结果有时候可能不需要 return ,有时候却需要,同时要结合自己的框架版本来尝试。
- 类似于支付通知,授权登录跳转的url记得关闭登录验证或token验证之类的限制,否则可能会收不到通知/授权登录失败。
示例方法如下,具体可直接查看 WeChatController 控制器源代码
| 功能 | 方法 |
|---|---|
| 服务端验证 | server |
| 接收 & 回复用户消息 | msg |
| 获取用户信息 | user |
| 发送模版消息 | templateMsg |
| 拉黑用户 | block |
| 统一下单 | pay |
| 根据微信订单号退款 | refundByTransactionId |
| 根据商户订单号退款 | refundByOutTradeNo |
| 发送普通红包 | redPacket |