没有合适的资源?快使用搜索试试~ 我知道了~
微信公众平台开发者文档.docx
1 下载量 191 浏览量
2022-10-26
13:21:41
上传
评论
收藏 1.02MB DOCX 举报
温馨提示
试读
84页
微信公众平台开发者文档
资源推荐
资源详情
资源评论
编号:
时间:2021 年 x 月 x 日
书山有路勤为径,学海无涯苦作舟
页码:第 1 页 共 84 页
第 1 页 共 84 页
微信公众平台开发者文档(腾讯官方)
一、新手接入
1.1、接入指南
第一步:申请消息接口
在公众平台网站的高级功能 – 开发模式页,点击“成为开发者”按钮,填写 URL 和 Token,其中 URL 是开
发者用来接收微信服务器数据的接口 URL。Token 可由开发者可以任意填写,用作生成签名(该 Token 会和
接口 URL 中包含的 Token 进行比对,从而验证安全性)。
第二步:验证 URL 有效性
开发者提交信息后,微信服务器将发送 GET 请求到填写的 URL 上,GET 请求携带四个参数:
参数
描述
signature
微信加密签名,signature 结合了开发者填写的 token 参数和请求中的
timestamp 参数、nonce 参数。
timestamp
时间戳
nonce
随机数
echostr
随机字符串
开发者通过检验 signature 对请求进行校验(下面有校验方式)。若确认此次 GET 请求来自微信服务器,请
原样返回 echostr 参数内容,则接入生效,成为开发者成功,否则接入失败。
编号:
时间:2021 年 x 月 x 日
书山有路勤为径,学海无涯苦作舟
页码:第 2 页 共 84 页
第 2 页 共 84 页
加密/校验流程如下:
1. 将 token、timestamp、nonce 三个参数进行字典序排序
2. 将三个参数字符串拼接成一个字符串进行 sha1 加密
3. 开发者获得加密后的字符串可与 signature 对比,标识该请求来源于微信
检验 signature 的 PHP 示例代码:
private function checkSignature()
{
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
$token = TOKEN;
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr);
$tmpStr = implode( $tmpArr );
$tmpStr = sha1( $tmpStr );
if( $tmpStr == $signature ){
return true;
}else{
return false;
}
}
PHP 示例代码下载:(如下:)
<?php
/**
* wechat php test
*/
//define your token
define("TOKEN", "weixin");
$wechatObj = new wechatCallbackapiTest();
编号:
时间:2021 年 x 月 x 日
书山有路勤为径,学海无涯苦作舟
页码:第 3 页 共 84 页
第 3 页 共 84 页
$wechatObj->valid();
class wechatCallbackapiTest
{
public function valid()
{
$echoStr = $_GET["echostr"];
//valid signature , option
if($this->checkSignature()){
echo $echoStr;
exit;
}
}
public function responseMsg()
{
//get post data, May be due to the different environments
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
//extract post data
if (!empty($postStr)){
编号:
时间:2021 年 x 月 x 日
书山有路勤为径,学海无涯苦作舟
页码:第 4 页 共 84 页
第 4 页 共 84 页
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$keyword = trim($postObj->Content);
$time = time();
$textTpl = "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>";
if(!empty( $keyword ))
{
$msgType = "text";
$contentStr = "Welcome to wechat world!";
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType,
$contentStr);
echo $resultStr;
}else{
echo "Input something...";
}
编号:
时间:2021 年 x 月 x 日
书山有路勤为径,学海无涯苦作舟
页码:第 5 页 共 84 页
第 5 页 共 84 页
}else {
echo "";
exit;
}
}
private function checkSignature()
{
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
$token = TOKEN;
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr);
$tmpStr = implode( $tmpArr );
$tmpStr = sha1( $tmpStr );
if( $tmpStr == $signature ){
return true;
}else{
return false;
}
剩余83页未读,继续阅读
资源评论
猫一样的女子245
- 粉丝: 93
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功