1。2 开发工具的选用及语言介绍

1。2。1  微信二次开发 

微信是腾讯公司推出的在智能终端提供的一种即时通讯的服务软件。微信公众号是微信向用户提供的一种账号形式,用户关注公众号后可以方便地获取多种多样的服务。为了使微信的开发者更好地进行微信的开发和拓展,微信公众号为用户提供了种类众多的open API,这些接口为开发者进行二次开发提供了支持。

微信公众平台为用户进行二次开发提供了众多的open API,主要有消息接收接口、消息发送接口、获取用户信息接口、客服接口、菜单接口等[7]。微信的消息接收接口主要处理消息的接收与回复,消息的处理等。获取用户消息接口主要是通过用户的openid(用户在公众号中的标识)获取用户的头像、用户名等信息[8]。当用户和公众号发生一些动作的交互时,微信可以用一定的接口将消息发送给微信的第三方开发者,开发者可以在交互发生48小时内调用客服接口,通过https请求的POST方法将一个json数据包发送给服务器,服务器对json数据进行解析,达到主动向用户发送消息的目的。这个接口可以在一定条件下满足开发者主动向用户发送消息的请求,可以使用户在使用时获得更加令人满意的使用体验,提升微信公众号进行消息处理的灵活性。菜单接口用于微信菜单的定义与管理[9]。

微信接口为用户进行二次开发,提供了固定的格式,用于xml或者json数据传输或实现一定的功能。以微信进行接口验证的接口为例,如下:

private function checkSignature()

{

        $signature = $_GET["signature"];//获取signature

        $timestamp = $_GET["timestamp"];//获取时间戳

        $nonce = $_GET["nonce"];//获取随机数

       

$token = TOKEN;//token值

$tmpArr = array($token, $timestamp, $nonce);//将数据数组化

sort($tmpArr, SORT_STRING);//排序

$tmpStr = implode( $tmpArr );

$tmpStr = sha1( $tmpStr );//sha1 加密

if( $tmpStr == $signature ){//如果验证匹配通过

return true;//返回true

}else{

return false;//返回false

}

}

以上接口主要是为了进行接口的验证与连接第三方开发者,主要包括token值(标志微信公众号与验证),signure(微信加密签名,signature是对用户填写的token参数和请求中的timestamp参数、nonce参数的结合。),timestamp(从服务器获得的时间戳),nonce(服务器产生的一组随机数),echostr(服务器产生随机字符串)作为验证标志。

以微信进行普通消息传书的XML文档为例:

<xml>

     <ToUserName><![CDATA[toUser]]></ToUserName>//传递接收方的openid

     <FromUserName><![CDATA[fromUser]]></FromUserName>//传递发送方的openid

     <CreateTime>1333333333</CreateTime>//传递时间戳

  <MsgType><![CDATA[text]]></MsgType>//传递消息的类型

  <Content><![CDATA[this is a test]]></Content>//传递消息的内容

  <MsgId>1111111111111</MsgId>//信息的id值

  </xml>

主要包括,微信发送者的openid,接收者的openid,消息内容等。微信根据规范的xml文档格式进行消息的解析[10]。

    微信公众平台作为微信提供的一种服务对接口权限和调用频次具有一定限制,在这里不做详细说明。

上一篇:Ruby+SQLITE3实验室管理系统的设计+ER图
下一篇:IntellijIDEA房屋租赁管理系统的设计与实现

基于Apriori算法的电影推荐

基于PageRank算法的网络数据分析

基于神经网络的验证码识别算法

基于网络的通用试题库系...

python基于决策树算法的球赛预测

基于消费者个性特征的化...

關于微信电台怎么做的几点思考【2900字】

张洁小说《无字》中的女性意识

安康汉江网讯

老年2型糖尿病患者运动疗...

网络语言“XX体”研究

我国风险投资的发展现状问题及对策分析

ASP.net+sqlserver企业设备管理系统设计与开发

麦秸秆还田和沼液灌溉对...

LiMn1-xFexPO4正极材料合成及充放电性能研究

新課改下小學语文洧效阅...

互联网教育”变革路径研究进展【7972字】