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 相关文章推荐
第1次亲密接触PHP5(1)
Oct 09 PHP
基于文本的搜索
Oct 09 PHP
PHP批量生成静态HTML的简单原理和方法
Apr 20 PHP
PHP程序员常见的40个陋习,你中了几个?
Nov 20 PHP
ThinkPHP控制器详解
Jul 27 PHP
PHP生成随机字符串(3种方法)
Sep 25 PHP
PHP 5.6.11中CURL模块问题的解决方法
Aug 08 PHP
php创建图像具体步骤
Mar 13 PHP
[原创]PHP实现SQL语句格式化功能的方法
Jul 28 PHP
PHP ADODB生成HTML表格函数rs2html功能【附错误处理函数用法】
May 29 PHP
laravel 配置路由 api和web定义的路由的区别详解
Sep 03 PHP
Yii2框架中一些折磨人的坑
Dec 15 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开源项目的源码指南
2014/12/21 PHP
php内存缓存实现方法
2015/01/24 PHP
如何写php守护进程(Daemon)
2015/12/30 PHP
Sample script that deletes a SQL Server database
2007/06/16 Javascript
div失去焦点事件实现思路
2014/04/22 Javascript
JavaScript针对网页节点的增删改查用法实例
2015/02/02 Javascript
JavaScript中定义函数的三种方法
2015/03/12 Javascript
jQuery动态添加
2016/04/07 Javascript
mui上拉加载功能实例详解
2017/04/13 Javascript
微信小程序实现的贪吃蛇游戏【附源码下载】
2018/01/03 Javascript
vue中使用带隐藏文本信息的图片、图片水印的方法
2020/04/24 Javascript
jQuery实现推拉门效果
2020/10/19 jQuery
[02:17]TI4西雅图DOTA2前线报道 啸天mik夫妻档解说
2014/07/08 DOTA
[02:08]2018年度CS GO枪械皮肤设计大赛优秀作者-完美盛典
2018/12/16 DOTA
[46:37]LGD vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
python实现指定字符串补全空格的方法
2015/04/30 Python
python实现mysql的读写分离及负载均衡
2018/02/04 Python
JavaScript中的模拟事件和自定义事件实例分析
2018/07/27 Python
python判断字符串或者集合是否为空的实例
2019/01/23 Python
Python 读取用户指令和格式化打印实现解析
2019/09/02 Python
python中调试或排错的五种方法示例
2019/09/12 Python
树莓派4B+opencv4+python 打开摄像头的实现方法
2019/10/18 Python
Python 使用 PyQt5 开发的关机小工具分享
2020/07/16 Python
Python中使用Selenium环境安装的方法步骤
2021/02/22 Python
HTML5表格_动力节点Java学院整理
2017/07/11 HTML / CSS
德国购买健身器材:AsVIVA
2017/08/09 全球购物
UNIX文件名称有什么规定
2013/03/25 面试题
学生就业推荐信
2013/11/13 职场文书
最新优秀教师个人先进事迹材料
2014/05/06 职场文书
说明书格式及范文
2014/05/07 职场文书
说好普通话圆梦你我他演讲稿
2014/09/21 职场文书
大学生考试作弊检讨书1000字
2014/10/14 职场文书
2014年化验室工作总结
2014/11/21 职场文书
SpringBoot+Vue+JWT的前后端分离登录认证详细步骤
2021/09/25 Java/Android
Python之matplotlib绘制折线图
2022/04/13 Python
Python软件包安装的三种常见方法
2022/07/07 Python