在线客服系统

图书馆微信服务平台的设计与实现(3)

时间:2016-11-18 11:30 来源:www.fabiaoba.com 作者:孔云 廖寅 资芸 薛秀 点击:

 

  3.1消息接口的实现方案

 

  目前常用的实现方案有基于PHP、J2EE、.NET和其他的网络编程的技术,常用的WEB服务器有apache,tomcat,nginx,iis等。微信官方提供了基于PHP的接口实现方案,熟练的程序员可以实现基于其它网络编程技术的消息接口代码。基于JAVA的消息接口实现如图3所示,是结合昆明理工大学微信平台的一种实现,主要需要实现的方法包括用于接收消息参数的doGet()和doPost()方法,用于验证接口合法性的valid()方法,实现消息接收、处理和响应的responseMsg()和replyMessage()方法,以及保证消息传输安全的checkSignature()和SHA1Encode()等身份验证和加解密方法。

 

  图3基于JAVA的消息接口实现

 

  3.2消息推送的格式和消息解析的实现方法3.2.1消息推送的格式消息推送是指微信用户向公众账号发送消息。微信服务器将POST该消息到第三方服务器配置的URL上。通常来说微信用户可以推送文本、图片、地理位置、链接和事件5种消息格式,推送XML结构的消息格式请参看文献[7]。3.2.2消息解析实现方法当第三方消息接口服务器收到用户推送的信息后,就需要将消息进行解析。以文本消息和JAVA实现的解析方法为例,其实现关键代码如下:

 

  Elementroot=document.getRootEle-ment();//获取XML文档根节点StringfromUsername=root.elementText(TromUserName”);//获取发送方StringtoUsername=root.elementText('ToUserName”);//获取接收方StringmsgType=root,elementTextTrim("MsgType”);//获取消息类型Stringcontent=root.elementTextTrim("Content”);//获取消息内容主要是解析开发者微信号,微信用户发送账号,信息类型和信息内容等关键信息。

 

  3.3消息回复的格式和消息封装方法3.3.1消息回复的格式消息回复是指第三方消息接口自动给微信用户回复消息。对于每一个POST请求,开发者在响应包中返回特定XML结构,对该用户的消息进行响应,目前支持文本、音乐和图文三种消息结构,回复XML结构的详细消息格式和含义请参看文献[7]。

 

  <XML>//XML结构的回复消息封装方式示例,字段含义<ToUserName><![CDATA[toUser]]></ToUserName>

 

  <FromUserName><![CDATA[fromUser]]></FromUserName>

 

  <CreateTime>12345678</CreateTime><MsgType><![CDATA[news]]></MsgType>

 

  <ArticleCount>2</ArticleCount><Articles>

 

  <item>

 

  <Title><![CDATA[title1]]></Title><Description><![CDATA[description1]]

 

  93

 

  ></Description>

 

  <PicUrl><![CDATA[picurl]]></PicUrl><Url><![CDATA[url]]></Url>

 

  </item>

 

  <item>

 

  ...//当回复消息数>1条时,以<item>...</item>形式封装消息</item>

 

  </Articles>

 

  <FuncFlag>1</FuncFlag>

 

  </XML>

 

  3.3.2消息的封装

 

  当微信第三方服务器对用户的消息进行智能处理后,就需要将回复内容根据回复类型进行对应格式的封装,以图文消息和JAVA实现为例,其封装的关键代码如下:

 

  StringresponseStr="<XML>";//封装XML结构的回复消息的JAVA核心代码//字段含义请参看文献[7]responseStr+="<ToUserName><![CDATA["+fromUsername+']]></ToUserName>";responseStr+="<FromUserName><!

 

  [CD-ATA["+toUsername+']]></FromUser-Name>";responseStr+="<CreateTime>"+System.

 

  currentTimeMillis()+"</CreateTime>";

 

  responseStr+="<MsgType><![CDATA[news]]></MsgType>";responseStr+="<Content><![CDATA[]]></Content>";responseStr+="<ArticleCount>1</Arti-cleCount>";responseStr+="<Articles>";responseStr+="<item>";responseStr+="<TMe><![CDATA[图书馆自修座位信息实时统计]]></Title>";responseStr+="<Discription><![CDATA["+contentStr+']]></Discription>";responseStr+="<PicUrl><![CDATA[http://222.197.202.36/images/seat.jpg]]></PicUrl>";responseStr+="<Url><![CDATA[http://222.197.202.36/NoAuthAction.do]]></Url>";responseStr+="</item>";responseStr+="</Articles>";responseStr+=<FuncFlag>1</FuncFlag>;responseStr+="</XML>";

 

  


www.fabiaoba.com),是一个专门从事期刊推广期刊发表、投稿辅导、发表期刊的网站。
  本站提供如何投稿辅导、发表期刊,寻求论文刊登合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级论文刊登/国家级论文刊登/ CSSCI核心/医学投稿辅导/职称投稿辅导。

投稿邮箱:fabiaoba365@126.com
 在线咨询: 投稿辅导275774677投稿辅导1003180928
 在线咨询: 投稿辅导610071587投稿辅导1003160816
 联系电话:13775259981

联系方式
李老师QQ:发表吧客服610071587 陈老师QQ:发表吧客服275774677 刘老师QQ:发表吧客服1003160816 张老师QQ:发表吧客服1003180928 联系电话:18796993035 投稿邮箱:fabiaoba365@126.com
期刊鉴别
  • 刊物名称:
  • 检索网站:
热门期刊
发表吧友情提醒

近来发现有些作者论文投稿存在大量剽窃、抄袭行为,“发表吧”对此类存在大量剽窃、抄袭的论文已经停止编辑、推荐。同时我们也提醒您,当您向“发表吧”投稿时请您一定要保证论文的原创性、唯一性,这既是对您自己负责,更是对他人的尊敬。

此类投稿的论文如果发表之后,对您今后的人生和事业将造成很大的麻烦,后果不堪设想,请您一定要慎重,三思而后行。

如因版权问题引起争议或任何其他原因,“发表吧”不承担任何法律责任,侵权法律责任概由剽窃、抄袭者本人承担。

 
QQ在线咨询
陈老师:275774677
张老师:1003180928
李老师:610071587
刘老师:1003160816
论文刊登热线:
137-7525-9981
微信号咨询:
fabiaoba-com

友情链接

申请链接