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


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 相关文章推荐
PHP5.0对象模型探索之抽象方法和抽象类
Sep 05 PHP
PHP学习之PHP表达式
Oct 09 PHP
zen cart新进商品的随机排序修改方法
Sep 10 PHP
smarty中post用法实例
Nov 28 PHP
举例讲解PHP面对对象编程的多态
Aug 12 PHP
php实现图片缩略图的方法
Mar 29 PHP
CI框架常用方法小结
May 17 PHP
基于thinkPHP框架实现留言板的方法
Oct 17 PHP
php面向对象之反射功能与用法分析
Mar 29 PHP
php实现的pdo公共类定义与用法示例
Jul 19 PHP
php+croppic.js实现剪切上传图片功能
Aug 14 PHP
PHP使用非对称加密算法RSA
Apr 21 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 采集书并合成txt格式的实现代码
2009/03/01 PHP
php操作sqlserver关于时间日期读取的小小见解
2009/11/29 PHP
php dirname(__FILE__) 获取当前文件的绝对路径
2011/06/28 PHP
10个值得深思的PHP面试题
2016/11/14 PHP
自制PHP框架之设计模式
2017/05/07 PHP
PHP curl批处理及多请求并发实现方法分析
2018/08/15 PHP
JavaScript入门教程(5) js Screen屏幕对象
2009/01/31 Javascript
JavaScript实现大数的运算
2014/11/24 Javascript
优化RequireJS项目的相关技巧总结
2015/07/01 Javascript
bootstrap读书笔记之CSS组件(上)
2016/10/17 Javascript
AngularJS用户选择器指令实例分析
2016/11/04 Javascript
BootStrap给table表格的每一行添加一个按钮事件
2017/09/07 Javascript
详解webpack多页面配置记录
2018/01/22 Javascript
在vue中,v-for的索引index在html中的使用方法
2018/03/06 Javascript
Vue实现微信支付功能遇到的坑
2019/06/05 Javascript
教你30秒发布一个TypeScript包到NPM的方法步骤
2019/07/22 Javascript
使用Layer组件弹出多个对话框(非嵌套)与关闭及刷新的例子
2019/09/25 Javascript
Angular value与ngValue区别详解
2019/11/27 Javascript
vue3.0+vue-router+element-plus初实践
2020/12/02 Vue.js
Python中删除文件的程序代码
2011/03/13 Python
python实现html转ubb代码(html2ubb)
2014/07/03 Python
python获取外网IP并发邮件的实现方法
2017/10/01 Python
python3学生名片管理v2.0版
2018/11/29 Python
Python爬虫学习之翻译小程序
2019/07/30 Python
linux下python中文乱码解决方案详解
2019/08/28 Python
python利用tkinter实现图片格式转换的示例
2020/09/28 Python
详解canvas drawImage()方法绘制图片不显示的问题
2018/10/08 HTML / CSS
动漫专业高职生职业生涯规划书
2014/02/15 职场文书
2014年国培研修感言
2014/03/09 职场文书
工程造价专业求职信
2014/07/17 职场文书
房产授权委托书范本
2014/09/22 职场文书
同学聚会邀请函
2015/01/30 职场文书
投资申请报告
2015/05/19 职场文书
2016医师资格考试考生诚信考试承诺书
2016/03/25 职场文书
MySQL CHAR和VARCHAR该如何选择
2021/05/31 MySQL
详解Flutter和Dart取消Future的三种方法
2022/04/07 Java/Android