- 1
- 0
- 约4.75千字
- 约 4页
- 2023-03-02 发布于山东
- 举报
下面将一步步来实现微信民众平台的开发
设置了开发者模式的url和token后我们就能够进行开发了
Token你自己随便设置
一、我们要先考证消息的是否来自微信自然这部也能够省略实现如下
开发者接收用户消息的时候,微服气务器将发送GET恳求到填写的URL上,并且带上四个参数
(signature、timestamp、nonce、echostr),开发者经过对签名(即signature)的效验,来判断此条
消息的真切性。
Signatur
:微信加密签名,
signature
联合了开发者填写的
token
参数和恳求中的
timestamp
参
数、nonce
参数
Timestamp:时间戳
Nonce:随机数
Echostr:随机字符串
考证代码:
$signature=$_GET[signature];
$timestamp=$_GET[timestamp];
$nonce=$_GET[nonce];
$token=TOKEN;//这个是你自己设置的
$tmpArr=array($token,$timestamp,$nonce);
sort($tmpArr,SORT_STRING);
$tmpStr=implode($tmpArr);
$tmpStr=sha1($tmpStr);
if($tmpStr==$signature){
returntrue;
}else{
returnfalse;
token
}
二、接受发送的消息
当普通微信用户向民众账号发消息时,微服气务器将
POST消息的
XML数据包到开发者填写的
URL
上。我们能够在开发者手册上
6%81%AF看到各个种类消息的xml格式,我们要做的就是获取xml中的信息。实现代码如下:
xml=file_get_contents(php://input);//获得POST过来的xml
$xml=newSimpleXMLElement($xml);//创立xml对象
foreach($xmlas$key=$value){
$data[$key]=strval($value);
}
将xml中的标签放到$data的键中内容放到值中以文本信息为例
xml
ToUserName![CDATA[toUser]]/ToUserName
FromUserName![CDATA[fromUser]]/FromUserName
CreateTime1348831860/CreateTime
MsgType![CDATA[text]]/MsgType
Content![CDATA[thisisatest]]/Content
/xml
如果我们想要的到用户发送的文本内容,使用
$data[
‘Content
’]
就能够获得
经过
MsgType能够获得发送的信息种类有
textimagevoicevideolinklocation
event
还有一些事件
比如关注取消关注等
xml中会有一个Event标签种类有:
包括subscribe(
定阅)、unsubscribe(
取消定阅)、CLICK(自定义菜单的点击事件
)SCAN扫描
你能够经过判断$data[‘MsgType]
和$data[‘Event‘]来根据自己的数据库或设计好的答复内容来
进行操作
三、关于答复的信息你需要
echo一个xml字符串答复的格式在文档中也能够找到
$retTMP=xml
ToUserName![CDATA[%s]]/ToUserName
FromUserName![CDATA[%s]]/FromUserName
CreateTime%s/CreateTime
MsgType![CDATA[text]]/MsgType
Content![CDATA[%s]]/Content
FuncFlag0/FuncFlag
/xml;
对消息模版中的通配符进行替换
$resultStr=sprintf($retTMP,$fromUserName,$toUserName,time( ),$retMsg);
输出XML中的描绘
echo$resultStr;
四、调用接口
微信中有很多多接口比如发送客服消息获得用户信息列表分组等
这些怎么实现呢?
这些其实就是为了让我们获得自己粉丝的信息我们好存在自己的数据库中
首先我们看到这些接口链接都需要ACCESS_TOKEN,可能有些人不知道这个怎么获得。其实这个
有时经过接口恳求获得一个ACCESS_TOKEN的,可是首先你要确定你的民众好是服务号有Appid和
AppSecret
首先我们要有两个函数用来恳求接口
functioncurlGet($url){
$result=file_ge
您可能关注的文档
最近下载
- 020——《山经》河水下游及其支流考.pdf
- 新人教版小学六年级数学上册教学课件(全册).pptx VIP
- 安徽A10联盟2026届高三2月学情检测(开年考)数学试卷(含答案解析).pdf
- 中考语文 作文天津中考作文真题分析.pdf VIP
- 教学评一致性的研究.doc VIP
- DB23T1501-2013 水利堤(岸)坡防护工程格宾与雷诺护垫施工技术规范.pdf VIP
- 2025年学历类自考专业(国贸)国际商务英语-外贸英语写作参考题库含答案解析.docx VIP
- 智慧停车安全培训课件.pptx VIP
- 农村会计试题及答案解析.docx VIP
- 癌症患者生活质量量表EORTC QLQ-C30.docx VIP
原创力文档

文档评论(0)