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


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 相关文章推荐
mysql,mysqli,PDO的各自不同介绍
Sep 19 PHP
PHP中ini_set与ini_get用法实例
Nov 04 PHP
ThinkPHP3.2.2的插件控制器功能
Mar 05 PHP
php使用array_search函数实现数组查找的方法
Jun 12 PHP
使用PHP生成图片的缩略图的方法
Aug 18 PHP
PHP使用fopen与file_get_contents读取文件实例分享
Mar 04 PHP
全面解析PHP验证码的实现原理 附php验证码小案例
Aug 17 PHP
php is_writable判断文件是否可写实例代码
Oct 13 PHP
PHP接口并发测试的方法(推荐)
Dec 15 PHP
thinkphp 验证码 的使用小结
May 07 PHP
PHP笛卡尔积实现算法示例
Jul 30 PHP
php workerman定时任务的实现代码
Dec 23 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
应用开发中涉及到的css和php笔记分享
2011/08/02 PHP
php中创建和调用webservice接口示例
2014/07/25 PHP
destoon实现VIP排名一直在前面排序的方法
2014/08/21 PHP
ThinkPHP实现静态缓存和动态缓存示例代码
2017/05/02 PHP
PHP性能测试工具xhprof安装与使用方法详解
2018/04/29 PHP
ThinkPHP框架实现FTP图片上传功能示例
2019/04/08 PHP
PHP正则表达式处理函数(PCRE 函数)实例小结
2019/05/09 PHP
JavaScript异步回调的Promise模式封装实例
2014/06/07 Javascript
jQuery代码实现发展历程时间轴特效
2015/07/30 Javascript
基于BootStrap Metronic开发框架经验小结【五】Bootstrap File Input文件上传插件的用法详解
2016/05/12 Javascript
js实现产品缩略图效果
2017/03/10 Javascript
Bootstrap缩略图的创建方法
2017/03/22 Javascript
vue2组件实现懒加载浅析
2017/03/29 Javascript
详解nodejs微信公众号开发——6.自定义菜单
2017/04/13 NodeJs
vue 运用mock数据的示例代码
2017/11/07 Javascript
图文介绍Vue父组件向子组件传值
2018/02/17 Javascript
Python中的闭包实例详解
2014/08/29 Python
对Python 文件夹遍历和文件查找的实例讲解
2018/04/26 Python
Django 根据数据模型models创建数据表的实例
2018/05/27 Python
不知道这5种下划线的含义,你就不算真的会Python!
2018/10/09 Python
Python基于scipy实现信号滤波功能
2019/05/08 Python
构建高效的python requests长连接池详解
2020/05/02 Python
canvas学习笔记之2d画布基础的实现
2019/02/21 HTML / CSS
关于h5中的fetch方法解读(小结)
2017/11/15 HTML / CSS
GNC健安喜美国官网:美国第一营养品牌
2016/07/22 全球购物
Whistles官网:英国女装品牌
2020/08/14 全球购物
违反工作纪律检讨书
2014/02/15 职场文书
岗位说明书范文
2014/05/07 职场文书
会计电算化专业求职信
2014/06/10 职场文书
考试作弊万能检讨书
2014/10/19 职场文书
高三英语教学计划
2015/01/23 职场文书
2015年党总支工作总结
2015/05/25 职场文书
元宵节晚会主持词
2015/07/01 职场文书
2019年房屋委托租赁合同范本(通用版)!
2019/07/17 职场文书
HTML中table表格拆分合并(colspan、rowspan)
2021/04/07 HTML / CSS
MySQL数据库完全卸载的方法
2022/03/03 MySQL