php版微信公众平台入门教程之开发者认证的方法


Posted in PHP onSeptember 26, 2016

本文讲述了php版微信公众平台开发者认证的方法。分享给大家供大家参考,具体如下:

微信公众平台如何成为开发者?

登录微信公众平台后,点击高级功能=》开发模式=》成为开发者=》填写接口配置信息,提交后等待我司工作人员的审核.

1. 开发者认证

这个最简单了,直接上个超简单版代码:

exit($_GET['echostr']);

php文件就写上面这一句就行,微信公共平台随便填写token,写上php文件的url,然后验证即可通过,超级简单吧?官方的认证根本没有必要,因为后面的步骤没有使用的验证签名的地方,所以这个地方为了图方便直接输出返回值轻松通过验证,当然下面也给出官方要求的认证代码:

$token='11';
$signarr=array($token,$_GET['timestamp'],$_GET['nonce']);
if($this->signnature($signarr,$_GET['signature'])){
  exit($_GET['echostr']);
}
function signnature($arr,$signature){
  sort($arr);
  if(sha1(implode($arr))==$signature) return true;
  return false;
}

把上面的代码保存成php文件,在微信公共平台设置同样的token,然后验证即可通过.

注:url是允许带get参数的

2. 网址接入:

公众平台用户提交信息后,我们将以GET请求方式请求到填写的Url上,并且带上四个参数:

* signature — 微信加密签名

* timestamp — 时间戳

* nonce — 随机数

* echostr — 随机字符串

开发者通过检验signature对网址接入合法性进行校验,若此次GET请求原样返回echostr参数内容,则接入生效,否则接入失败,验证signature将结合开发者填写的token参数、timestamp参数和nonce参数等.

3. 加密流程:

* 将token、timestamp、nonce三个参数进行字典序排序

* 将三个参数字符串拼接成一个字符串进行sha1加密

* 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信.

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
使用 MySQL 开始 PHP 会话
Dec 21 PHP
一步一步学习PHP(2)――PHP类型
Feb 15 PHP
PHP中用hash实现的数组
Jul 17 PHP
ThinkPHP后台首页index使用frameset时的注意事项分析
Aug 22 PHP
Zend Framework入门教程之Zend_Registry组件用法详解
Dec 09 PHP
PHP中的正则表达式实例详解
Apr 25 PHP
Yii 2.0中场景的使用教程
Jun 02 PHP
PHP PDOStatement::setAttribute讲解
Feb 01 PHP
PHP fprintf()函数用法讲解
Feb 16 PHP
PHP判断是否微信访问的方法示例
Mar 27 PHP
PHP实现二维数组(或多维数组)转换成一维数组的常见方法总结
Dec 04 PHP
Yii框架多语言站点配置方法分析【中文/英文切换站点】
Apr 07 PHP
php is_executable判断给定文件名是否可执行实例
Sep 26 #PHP
PHP弱类型的安全问题详细总结
Sep 25 #PHP
php中mkdir()函数的权限问题分析
Sep 24 #PHP
php 生成Tab键或逗号分隔的CSV
Sep 24 #PHP
php 使用fopen函数创建、打开文件详解及实例代码
Sep 24 #PHP
php fread读取文件注意事项
Sep 24 #PHP
一个简单安全的PHP验证码类、PHP验证码
Sep 24 #PHP
You might like
php做下载文件的实现代码及文件名中乱码解决方法
2011/02/03 PHP
php强制运行广告的方法
2014/12/01 PHP
详解WordPress中创建和添加过滤器的相关PHP函数
2015/12/29 PHP
PHP中include/require/include_once/require_once使用心得
2016/08/28 PHP
Laravel5.1自定义500错误页面示例
2016/10/09 PHP
用PHP去掉文件头的Unicode签名(BOM)方法
2017/06/22 PHP
thinkphp3.2同时连接两个数据库的简单方法
2019/08/13 PHP
laravel5.6 框架邮件队列database驱动简单demo示例
2020/01/26 PHP
js word表格动态添加代码
2010/06/07 Javascript
JS解析json数据并将json字符串转化为数组的实现方法
2012/12/25 Javascript
Js中获取frames中的元素示例代码
2013/07/30 Javascript
javascript中数组的多种定义方法和常用函数简介
2014/05/09 Javascript
JavaScript事件委托实现原理及优点进行
2020/08/29 Javascript
[01:38]【DOTA2亚洲邀请赛】Sumail——梦开始的地方
2017/03/03 DOTA
Python列表list数组array用法实例解析
2014/10/28 Python
Python编写电话薄实现增删改查功能
2016/05/07 Python
Python端口扫描简单程序
2016/11/10 Python
详解Python用户登录接口的方法
2019/04/17 Python
详解python实现交叉验证法与留出法
2019/07/11 Python
简单了解python字符串前面加r,u的含义
2019/12/26 Python
python GUI库图形界面开发之PyQt5不规则窗口实现与显示GIF动画的详细方法与实例
2020/03/09 Python
Python虚拟环境virtualenv创建及使用过程图解
2020/12/08 Python
CSS3实现时间轴效果
2016/07/11 HTML / CSS
HTML5移动端开发遇见的东西
2019/10/11 HTML / CSS
FLOS美国官网:意大利高级照明工艺的传奇
2018/08/07 全球购物
Keds加拿大官网:购买帆布运动鞋和皮鞋
2019/09/26 全球购物
Farfetch澳大利亚官网:Farfetch Australia
2020/04/26 全球购物
广告学专业应届生求职信
2013/10/01 职场文书
初二生物教学反思
2014/02/03 职场文书
分层教学实施方案
2014/03/19 职场文书
卫校毕业生个人自我鉴定
2014/04/28 职场文书
体育教师求职信
2014/06/30 职场文书
上党课的心得体会
2014/09/02 职场文书
四风问题个人对照检查剖析材料
2014/09/27 职场文书
自主招生自荐信格式范文
2015/03/25 职场文书
忆童年!用Python实现愤怒的小鸟游戏
2021/06/07 Python