第1页共77页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第1页共77页微信公众平台开发者文档(腾讯官方)一、新手接入1.1、接入指南第一步:申请消息接口在公众平台网站的高级功能–开发模式页,点击“成为开发者”按钮,填写URL和Token,其中URL是开发者用来接收微信服务器数据的接口URL
Token可由开发者可以任意填写,用作生成签名(该Token会和接口URL中包含的Token进行比对,从而验证安全性)
第二步:验证URL有效性开发者提交信息后,微信服务器将发送GET请求到填写的URL上,GET请求携带四个参数:参数描述signature微信加密签名,signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数
timestamp时间戳nonce随机数第2页共77页第1页共77页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第2页共77页echostr随机字符串开发者通过检验signature对请求进行校验(下面有校验方式)
若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败
加密/校验流程如下:1
将token、timestamp、nonce三个参数进行字典序排序2
将三个参数字符串拼接成一个字符串进行sha1加密3
开发者获得加密后的字符串可与signature对比,标识该请求来源于微信检验signature的PHP示例代码:privatefunctioncheckSignature(){$signature=$_GET["signature"];$timestamp=$_GET["timestamp"];$nonce=$_GET["nonce"];$token=TOKEN;$tmpArr=array($token,$time