微信实名认证才能加群里回复内容为什么要发送后自己才能看见

函数:responseMsg()
作用:返回消息给微信用户
& 本函数将以微信官方提供的PHP示例代码为例子(PHP示例代码下载),来分析这个函数的作用,为什么要分析这个函数responseMsg()呢?因为,我们在开发的时候如果要&事件推送&进行回复消息时一定会用到这个函数,但是,请注意这个函数名称并不是固定的,您可以根据自己的需要进行重新定义。
& 这个函数在类wechatCallbackapiTest里面定义的,我们一行一行的来分析这个函数。
& 在分析函数前先了解一下当微信用户在发送消息时,开发者微信服务器是如何接收并回复消息给微信用户的。
& 假设以&关注&为例子,当微信用户在手机上面搜索一个公众号后,当用户点击某个公众号的&关注&后,相当于给微信服务器发送了一个关注POST请求,然后,微信服务器就会把这个请求以xml的格式发送给开发者服务器(也就是微信公众号的拥有者,此时,这个公众号是在&开发模式&下,如果在&编辑模式&下,微信服务器就不需要发给开发者服务器了,而是直接在微信服务器上面处理),开发者服务器则接收到这个xml结构的数据消息,然后,进行处理处理好后,再以xml格式返回给微信服务器。
& 函数responseMsg()就在开发者服务器上面的文件wx_sample.php里面,也就是这个函数就是处理开发者服务器接收到的xml消息,这就是这个函数的作用。
& 1)函数要处理xml消息,就要先接收到这些消息,所以,第一步获取传递过来的消息:
$postStr = $GLOBALS[&HTTP_RAW_POST_DATA&];
& 2)在处理消息前先来判断一下是否接收到了这个消息,如果没有接收到就不要处理了,直接返回为空:
if (!empty($postStr)){
....}else{
& 这里为什么接收不到后就要返回空,不写可以吗?
& 这一点非常重要,因为微信服务器在发送消息后,如果者服务器没有回应的话,微信服务器会再一次发送同样的消息,如果还没有反应,再一次发同样的消息。所以,者服务器一直没有反应微信服务器就要发送3次同样的消息,这就有问题了,这很可能引起同一个消息被多次发送,还有一个问题如果这些消息是保存数据库里面的,那么,可能被保存三分,这是非常危险的。
& 所以,这里为什么要返回空了,还有一种方法是直接返回success,这样就解决了上面的问题了。
3)如果接收到了消息,则进入到条件if(!empty($postStr))里面执行里面的代码。
& 函数libxml_disable_entity_loader(true)作用:因为传递过来的xml有可能是黑客或其它非法用户,所以,使用这个函数可以防止xml内部被注入,总之,这个函数就是防止安全的。
& 把传递过来的消息对象化:$postObj = ($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
& 这个函数还可以写为:$postObj = simplexml_load_string($postStr);
& 后面的那两个参数是默认的,为什么要转换为对象呢?因为,传递过来的是xml格式的消息,要获取这些消息内容就要把消息对象化,这跟php里面的类一样,要使用类里面的函数就要实例化类为对象,有了对象就可以调用类中的函数了。同样的道理如果要使用消息里面的内容就要对象化这个消息。
4) 调用获取传递过来的消息内容:
& 获取微用户名:$fromUsername = $postObj-&FromUserN
& 获取开发者用户名:$toUsername = $postObj-&ToUserN
& 获取用户发送的消息内容:$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字符串就是要回复给微信服务器的内容模板,也就是微信用户发送消息后接收到的具体内容。
& 请看这里面的%s符号,这里就微信开发者要填写的内容,我们就把符号%s替换成我们要回复的内容,然后,发送给微信服务器,微信服务器把这个xml消息处理后,再发送给微信用户。
5)发送消息给用户:
if(!empty( $keyword ))
$msgType = &text&;
$contentStr = &Welcome to wechat world!&;
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
echo $resultS
echo &Input something...&;
& 在最外层通过条件if (!empty($postStr))我们已经判断了,用户传递过来消息了,但是,这样还不完全确定用户传递过来的消息有没有内容,如果没有具体内容的话,我们也无法回复消息给用户。
& 所以,判断发送过来的消息有没有具体的内容$keyword,如果有内容即条件if(!empty( $keyword ))成立,则返回消息给微信用户。
& 定义消息的类型和返回的具体内容:
msgType = &text&;
$contentStr = &Welcome to wechat world!&;
& 这里就可以根据自己的需要进行定义了,比如用户在我的微信公众号里面输入&wxlian&后,让程序自动回复一个网址,那上面的返回内容便是:
$contentStr = &www.phpos.net&;
& 然后,通过函数(参数)把模板$texttpl里面的百分号%s替换成我们定义好的内容:
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
& 这样便得到了一个字符串$resultStr,然后,返回这个字符串:echo $resultStr。
& 这样微信用户在公众号里面输入&wxlian&便收到了一个网址消息&www.phpos.net&,这跟我们关注一个公众号,一般都收到一条欢迎消息道理完全一样。
& 6)如果微信用户发送的消息是空,则返回的消息为:
echo &Input something...&;
& 提示用户输入关键词。
PHPOS微信网:专注于、、技术研究,为网站前后台和微信开发工程师提供教程资源。||——微信回复评论别人能看到吗_微信朋友圈为什么看不到别人的评论_最火下载站
您的位置: >
> 微信朋友圈为什么看不到别人的评论
微信朋友圈为什么看不到别人的评论
大家经常在空间评论和查看说说,不管是谁发表的我们都可以看到,那么朋友圈中是不是也是这样呢?在微信回复评论别人能看到吗?这个问题是大家非常关注的,其实微信朋友圈的评论不是所有人能看到的,那么微信朋友圈为什么看不到别人的评论呢?本文就给大家介绍一下原因。
微信回复评论别人能看到吗?微信朋友圈为什么看不到别人的评论?
先来说说,为什么主人回复别人的我看不到?我回复给别人的评论,我的好友们也都看不到?
见下面图①,看到红框里的A回复B了吗,相当于A和B在私聊,你看不到他们的聊天内容,当然有例外,除非A和B都是你的微信好友,那么你就能看到他们的私聊内容。
那么,这种私聊是如何发的?
下面看图②,看到红框里的灰色文字了吗,点击你想回复的好友昵称,就能看到A回复B。那么A回复了B,B就能收到A回复B的此条消息。
那么,为什么有时看到的是主人在自己的说说下面评论?
下面看图③,主人不一定真是吃饱了没事干,自己评论自己,而是在回复主人的好友评论而已。
看到红框里的灰色字体了吗,评论,主人没有点击好友昵称A,B,而是直接点击评论进行回复,那么A,B都能收到主人的此条消息。而且主人的好友也能看到此条评论。
最后,告诉大家的是,微信的朋友圈与说说不同。如果互相都是朋友则都能看到,如果张三、李四、马五都和主人是微信好友,而张三、李四、马五之间并不是微信好友,那么他们之间是互相看不到评论的,只要主人能看到他们所有人的评论,他们也能看到主人的回复。
上一篇: 下一篇:微信公众号如何添加回复!看过之后你会觉得非常简单~~~
作者:阿兴 &
& 微信公众号:xingtongnet
是不是还在为申请了公众号不会使用而烦恼呢,下面就是小编个人总结的一些公众号使用操作方法,如果有同样为此而烦恼的朋友,可以,也可以留言咱们互相探讨一下:以下就是我个人总结的公众号回复部分的使用方法,希望能帮到你们。
1.管理后台【基础设置】【微信—文本回复】中添加文本回复。
一、新增文本自定义回复
&注:此页可以查看文本回复列表,也可以编辑删除文本回复
二、编辑文本回复
1.关键词:触发文本回复的关键词,例如:“介绍”,系统将会回复下面的内容。
2.关键词类型:包含匹配和完全匹配两种类型选择。
3.内容或简介:触发关键词回复的内容信息,插入表情直接在“表情”中选择。
2.在【微信—图文回复】中直接设置
添加设置图文信息时,各个图文信息的关键词中至少有一个相同的词组。如上图,三个图文的关键词中都有“6月”,那么“6月”即可触发这个多图文的回复。
3.在【微信—多图文回复】中设置
一、添加多图文回复&
关键词:触发多图文回复的词
图文消息:直接添加图文消息,可以多次选择添加,下面直接呈现微信中显示效果。也可清空重新选择。
系统管理后台中【基础设置】【微信—语音回复】中设置添加。
4、新增语音回复
注:此页可以查看语音回复列表,也可以编辑删除语音回复
5、编辑语音回复
1.&关键词:触发语音回复的关键词,例如:“挚爱”,系统将会回复下面的音乐连接信息。
2.&音乐标题:音乐名称
3.&音乐连接:粘贴或者上传选择音乐连接地址
4.&高品质音乐连接:粘贴或者上传选择音乐连接地址
5.&音乐描述:此音乐简单描述
音链接素材库选择:
选择界面:&
1.&试听,后台无法试听,在手机微信公众号上触发关键词试听
2.&音乐连接地址,选择腾讯音乐。
如果还有什么不太懂的可以来我们兴通网络微信公众号查看哦,更多精彩内容,等你来看哈~~
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。微信公众号如何在用户发送图片后能自动回复? - 知乎29被浏览11446分享邀请回答53 条评论分享收藏感谢收起

我要回帖

更多关于 微信旧版本怎么才能用 的文章

 

随机推荐