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


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迅雷、快车、旋风下载专用链转换代码
Jun 15 PHP
PHP实现使用优酷土豆视频地址获取swf播放器分享地址
Jun 05 PHP
ThinkPHP快速入门实例教程之数据分页
Jul 01 PHP
PHP截取指定图片大小的方法
Dec 10 PHP
PHP实现的json类实例
Jul 28 PHP
PHP中new static()与new self()的比较
Aug 19 PHP
深入解析PHP中SESSION反序列化机制
Mar 01 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
Nov 16 PHP
Laravel多用户认证系统示例详解
Mar 13 PHP
PHP使用PDO实现mysql防注入功能详解
Dec 20 PHP
实例讲解PHP表单
Jun 10 PHP
KindEditor在php环境下上传图片功能集成的方法示例
Jul 20 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面试题附答案
2009/01/07 PHP
PHP+SQL 注入攻击的技术实现以及预防办法
2011/01/27 PHP
PHP下的Oracle客户端扩展(OCI8)安装教程
2014/09/10 PHP
PHP合并静态文件详解
2014/11/14 PHP
php获取本周开始日期和结束日期的方法
2015/03/09 PHP
PHP unset函数原理及使用方法解析
2020/08/14 PHP
Javascript Throttle & Debounce应用介绍
2013/03/19 Javascript
如何解决手机浏览器页面点击不跳转浏览器双击放大网页
2016/07/01 Javascript
防止Node.js中错误导致进程阻塞的办法
2016/08/11 Javascript
Bootstrap 下拉多选框插件Bootstrap Multiselect
2017/01/22 Javascript
基于JavaScript实现本地图片预览
2017/02/08 Javascript
Vuejs 组件——props数据传递的实例代码
2017/03/07 Javascript
js中的触发事件对象event.srcElement与event.target详解
2017/03/15 Javascript
jQuery常见面试题之DOM操作详析
2017/07/05 jQuery
vue的token刷新处理的方法
2018/07/17 Javascript
用POSTMAN发送JSON格式的POST请求示例
2018/09/04 Javascript
JS实现可控制的进度条
2020/03/25 Javascript
JavaScript常用8种数组去重代码实例
2020/09/09 Javascript
使用python解析xml成对应的html示例分享
2014/04/02 Python
python遍历类中所有成员的方法
2015/03/18 Python
Python实现对PPT文件进行截图操作的方法
2015/04/28 Python
Python封装shell命令实例分析
2015/05/05 Python
python实现简单点对点(p2p)聊天
2017/09/13 Python
Python切片操作实例分析
2018/03/16 Python
python多线程http压力测试脚本
2019/06/25 Python
python实现udp聊天窗口
2020/03/31 Python
python相对企业语言优势在哪
2020/06/12 Python
Python预测2020高考分数和录取情况
2020/07/08 Python
巴西最大的家电和百货零售商:Casas Bahia
2016/11/22 全球购物
高一地理教学反思
2014/01/18 职场文书
倡议书格式
2014/04/14 职场文书
青春无悔演讲稿
2014/05/08 职场文书
教师节倡议书
2014/08/30 职场文书
企业党支部工作总结2015
2015/05/21 职场文书
辅导员学期工作总结
2015/08/14 职场文书
教你怎么用Python处理excel实现自动化办公
2021/04/30 Python