基于SAE与微信公众平台的校园信息化服务系统(课室保修模块)-ky.docx_第1页
基于SAE与微信公众平台的校园信息化服务系统(课室保修模块)-ky.docx_第2页
基于SAE与微信公众平台的校园信息化服务系统(课室保修模块)-ky.docx_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于SAE与微信公众平台的校园信息化服务一、微信接口配置-编写config.yaml开发语言使用python实现,使用pythonweb框架:webpy编写网页应用,因此需要修改应用配置文件就爱如调用webpy的相关信息。微信接口使用xml,需要调用SAE自带的lxml库,具体如下:Name: computerscnuVersion:1Libraries:-name:webpy Version:”0.36”-name:lxml Version:”2.3.4”二、微信接口配置-编写index.wsgi使用index.wsgi文件中的接入地址来实现网络请求的服务地址的转换,提供微信通信与认证、故障查询、故障排查和故障上报四个功能,实现代码如下:#coding:utf-8import osimport saeimport weburls = (/,About/wxauth,wxauth/issues,Issues/guide,GuideBook/tellus,TellUs)三、微信通讯与认证微信通讯与认证模块(wxauth)主要完成与微信公众服务平台的交互,包括报文的分析和认证,其中认证的部分实现方式为:使用webpy服务获取微信交互的web报文,对报文中的时间戳(timestamp)、随机数(nonce)和本地的token进行字典排序后,进行SHA-1签名,与报文中的签名(signature)进行对比,如果两者一致,则说明报文是合法报文,返回报文中的echostr给系统其他xml解析模块。实现代码如下:#coding:utf-8import hashlibimport webclass wxauth:def GET_wxechostr(self): #获取输入参数 wxdata = web.input() signature = wxdata.signature nonce = wxdata.timestamp echostr = wxdata.echostr token = “本地 token” #字典序排序 list = token, timestamp, nonce list.sort() map(sha1.update,list) hashcode = sha1.hexdigest() #验证签名正确性 If hashcode = signature: Return echostr四、对用户上传的content内容进行分词处理分词处理调用SAE的分词接口:/urlclient.php?parameters其中的分词属性参数因简化考虑不需要接口提供。对本文应用场景的样例:“一课南座401投影仪坏了。”进行分词的代码如下:chinese_text = “一课南座401投影仪坏了”_SEGMENT_BASE_URL = /urlclient.phppayload = urllib.urlencode(context,Chinese_text),)args = urllib.urlencode(word_tag,0),(encoding,UTF-8),)url = _SEGMENT_BASE_URL + ? + argsresult urllib2.urlopen(url,payload).read()五、使用共享数据库-共享MySQL共享 MySQL 服务是新浪云基于 MySQL-5.6 开发的一个共享数据库服务,您仅需几秒钟即可获得一个包括主从节点、高可用服务、自动备份、在线扩容以及监控等各种管理功能的 MySQL 服务。不同于独享MySQL,创建一个共享 MySQL 数据库并不会创建新的mysql-server(mysqld)实例,而只是在已有的 mysql-server 集群里选择一个实例,然后在这个实例上调用CREATEDATABASEapp_$APPNAME创建一个新的 database 供您使用。六、新浪云的PHP运行环境提供了标准的MySQL、MySQLI和PDO模块来连接数据库,支持所有MYSQL的特性,您可以使用您习惯的方式来操作数据库。以下是一些和共享MySQL数据库服务相关的预定义常量,你可以直接引用这些参数来连接数据库:用户名 : SAE_MYSQL_USER密码 : SAE_MYSQL_PASS主库域

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论