微信公众平台开发之配置与请求

5年以前  |  阅读数:667 次  |  编程语言:PHP 

一、配置参数


    define('WEIXIN_APPID', 'wxzzzzzzzz');
    define('WEIXIN_APPSECRET', 'ouewjdsaudsamkh');
    define('WEIXIN_TOKEN', '9973833232232');
    define('WEIXIN_NOTIFY_URL', 'http://xx.com/xx/xx');
    define('WEIXIN_MCHID', '322221121');
    define('WEIXIN_KEY', 'xddsdswewew');

1)微信公众号开发中ID

WEIXIN_APPID: 应用ID

WEIXIN_APPSECRET: 应用密钥

进入到公众平台首页,点击开发者中心,赫然就能看到,配置页面中的,这两个默认就是有的。

2)服务器配置

WEIXIN_TOKEN,也就是token令牌,自定义的,必须为英文或数字,长度为3-32字符。

URL服务器地址,也就说微信公众号的入口地址。在这个页面中,我将做 签名验证 或接收事件消息, 点击查看微信相关文档 。

1、签名验证: 当做修改配置的时候,是需要通过这个地址做签名验证的

2、接收事件消息: 是指当关注的时候推送一些消息过来,以及可以做一些特定的逻辑操作

3)微信支付配置

点击微信支付菜单

WEIXIN_MCHID: 商户号,在商户信息中可以查看到

WEIXIN_NOTIFY_URL: 微信支付异步回调API,可以做更新订单状态,发推送等逻辑

WEIXIN_KEY: 设置这个支付密钥得登录微信支付商户平台,登录后点击进入API安全,然后下载证书和自己设置密钥,就OK了。

二、请求与调试

php中有个很方便的 curl ,这里提下CURLOPT_SSL_VERIFYPEER。一开始没加这个属性,请求微信服务器的时候每次返回数据是false。后面用firefox的HttpRequester模拟请求了一下,可以返回到数据,查找资料后发现要设置下这个属性。

CURLOPT_SSL_VERIFYPEER:是否检测服务器的证书是否由正规浏览器认证过的授权CA颁发的
/**

  • 原始POST
  • @param $url 请求的url地址
  • @param $raw 原始数据,可以为字符串或数组
  • @return mixed 返回请求值
    */
    public function rawpost($url, $raw)
    {
    $resource = curl_init();
    curl_setopt($resource, CURLOPT_POST, true);
    curl_setopt($resource, CURLOPT_URL, $url);
    curl_setopt($resource, CURLOPT_POSTFIELDS, $raw);
    curl_setopt($resource, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($resource, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($resource, CURLOPT_SSL_VERIFYPEER, false);
    //curl_setopt($resource, CURLOPT_HTTPHEADER, array('Expect:'));
    $data = curl_exec($resource);
    curl_close($resource);
    return $data;
    }

这里推荐下HttpRequester,这个插件,可以模拟post、get等各种提交,content type也可以选择。

微信开发也提供了在线测试接口的地方。 点击查看微信公众平台接口调试工具

在请求调试的时候,微信会返回各种返回码。 点击查看全局返回码说明

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例