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


Posted in PHP onAugust 26, 2015

一、配置参数

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 相关文章推荐
在命令行下运行PHP脚本[带参数]的方法
Jan 22 PHP
php和数据库结合的一个简单的web实例 代码分析 (php初学者)
Jul 28 PHP
PHP中数组合并的两种方法及区别介绍
Sep 14 PHP
PHP关联链接常用代码
Nov 05 PHP
php设计模式之单例、多例设计模式的应用分析
Jun 30 PHP
php中利用explode函数分割字符串到数组
Feb 08 PHP
php+xml实现在线英文词典之添加词条的方法
Jan 23 PHP
php实现模拟登陆方正教务系统抓取课表
May 19 PHP
php 多文件上传的实现实例
Oct 23 PHP
Thinkphp 空操作、空控制器、命名空间(详解)
May 05 PHP
解决laravel上传图片之后,目录有图片,但是访问不到(404)的问题
Oct 14 PHP
PHP实现递归的三种方法
Jul 04 PHP
php基础教程
Aug 26 #PHP
php面向对象与面向过程两种方法给图片添加文字水印
Aug 26 #PHP
基于PHP+jQuery+MySql实现红蓝(顶踩)投票代码
Aug 25 #PHP
百度地图API使用方法详解
Aug 25 #PHP
PHP实现生成唯一会员卡号
Aug 24 #PHP
PHP实现微信发红包程序
Aug 24 #PHP
php 利用socket发送HTTP请求(GET,POST)
Aug 24 #PHP
You might like
php上传文件问题汇总
2015/01/30 PHP
wamp服务器访问php非常缓慢的解决过程
2015/07/01 PHP
yii2.0使用Plupload实现带缩放功能的多图上传
2015/12/22 PHP
php连接oracle数据库的方法(测试成功)
2016/05/26 PHP
PHP实现防止表单重复提交功能【基于token验证】
2018/05/24 PHP
PHP 文件写入和读取操作实例详解【必看篇】
2019/11/04 PHP
Notify - 基于jquery的消息通知插件
2011/10/18 Javascript
jQuery插件实现静态HTML验证码校验
2015/11/06 Javascript
如何判断Javascript对象是否存在的简单实例
2016/05/18 Javascript
jquery判断checkbox是否选中及改变checkbox状态的实现方法
2016/05/26 Javascript
Mvc提交表单的四种方法全程详解
2016/08/10 Javascript
详解webpack的配置文件entry与output
2017/08/21 Javascript
vue实现图书管理demo详解
2017/10/17 Javascript
Vuejs在v-for中,利用index来对第一项添加class的方法
2018/03/03 Javascript
Vue 构造选项 - 进阶使用说明
2020/08/14 Javascript
Python查看多台服务器进程的脚本分享
2014/06/11 Python
Python字符串匹配算法KMP实例
2015/07/18 Python
PyQt实现界面翻转切换效果
2018/04/20 Python
python Spyder界面无法打开的解决方法
2018/04/27 Python
python3.4实现邮件发送功能
2018/05/28 Python
Numpy截取指定范围内的数据方法
2018/11/14 Python
详解Python用户登录接口的方法
2019/04/17 Python
Django --Xadmin 判断登录者身份实例
2020/07/03 Python
python中实现词云图的示例
2020/12/19 Python
CSS3 完美实现圆角效果
2009/07/13 HTML / CSS
JACK & JONES瑞典官方网站:杰克琼斯欧式风格男装
2017/12/23 全球购物
求两个数的乘积和商数,该作用由宏定义来实现
2013/03/13 面试题
就业推荐表自我鉴定
2014/03/21 职场文书
国旗下的演讲稿
2014/05/08 职场文书
优秀的应届生自荐信
2014/05/23 职场文书
2014年化妆品销售工作总结
2014/12/01 职场文书
高校自主招生教师推荐信
2015/03/23 职场文书
初中政教处工作总结
2015/08/12 职场文书
《鲁滨逊漂流记》之六读后感(4篇)
2019/09/29 职场文书
Go语言 go程释放操作(退出/销毁)
2021/04/30 Golang
python计算列表元素与乘积详情
2022/08/05 Python