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 相关文章推荐
在PHP中使用与Perl兼容的正则表达式
Nov 26 PHP
PHP 引用文件技巧
Mar 02 PHP
第五章 php数组操作
Dec 30 PHP
php文件打包 下载之使用PHP自带的ZipArchive压缩文件并下载打包好的文件
Jun 13 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十五)
Jun 30 PHP
windows的文件系统机制引发的PHP路径爆破问题分析
Jul 28 PHP
PHP中require和include路径问题详解
Dec 25 PHP
PHP实现WebService的简单示例和实现步骤
Mar 27 PHP
解决php表单重复提交实现方法
Sep 29 PHP
WordPress中对访客评论功能的一些优化方法
Nov 24 PHP
AES加解密在php接口请求过程中的应用示例
Oct 26 PHP
PHP实现 APP端微信支付功能
Jun 22 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
DC《神奇女侠2》因疫情推迟上映 温子仁新恐怖片《恶性》撤档
2020/04/09 欧美动漫
简单的php数据库操作类代码(增,删,改,查)
2013/04/08 PHP
php二维数组用键名分组相加实例函数
2013/11/06 PHP
[原创]ThinkPHP中SHOW_RUN_TIME不能正常显示运行时间的解决方法
2015/10/10 PHP
php数据库的增删改查 php与javascript之间的交互
2017/08/31 PHP
Jquery读取URL参数小例子
2013/08/30 Javascript
深入理解JavaScript中的传值与传引用
2013/12/09 Javascript
jQuery瀑布流插件Wookmark使用实例
2014/04/02 Javascript
For循环中分号隔开的3部分的执行顺序探讨
2014/05/27 Javascript
简介JavaScript中的sub()方法的使用
2015/06/08 Javascript
JavaScript的String字符串对象常用操作总结
2016/05/26 Javascript
表单input项使用label同时引用Bootstrap库导致input点击效果区增大问题
2016/10/11 Javascript
详解用原生JavaScript实现jQuery的某些简单功能
2016/12/19 Javascript
Android中Okhttp3实现上传多张图片同时传递参数
2017/02/18 Javascript
vue 项目如何引入微信sdk接口的方法
2017/12/18 Javascript
ajax请求data遇到的问题分析
2018/01/18 Javascript
js 对象使用的小技巧实例分析
2019/11/08 Javascript
angular组件间通讯的实现方法示例
2020/05/07 Javascript
Python 匹配任意字符(包括换行符)的正则表达式写法
2009/10/29 Python
Python socket.error: [Errno 98] Address already in use的原因和解决方法
2014/08/25 Python
Python3之字节串bytes与字节数组bytearray的使用详解
2019/08/27 Python
django框架单表操作之增删改实例分析
2019/12/16 Python
如何在 Django 模板中输出 "{{"
2020/01/24 Python
基于python检查矩阵计算结果
2020/05/21 Python
使用python操作lmdb对数据读取的实例
2020/12/11 Python
CSS3 linear-gradient线性渐变生成加号和减号的方法
2017/11/21 HTML / CSS
CSS3 实现穿梭星空动画
2020/11/13 HTML / CSS
阿根廷在线宠物商店:Puppis
2018/03/23 全球购物
C/C++有关内存的思考题
2015/12/04 面试题
大学生毕业鉴定
2014/01/31 职场文书
七年级上册语文教学计划
2015/01/22 职场文书
展览会邀请函
2015/02/02 职场文书
道歉情书大全
2015/05/12 职场文书
文明和谐家庭事迹材料(2016精选版)
2016/02/29 职场文书
2020优秀员工演讲稿(三篇)
2019/10/17 职场文书
Java实现学生管理系统(IO版)
2022/02/24 Java/Android