在信息化迅速发展的时代,新媒体正在被广大的年轻群体所接受,特别是在校大学生,以微信为代表的新媒体已成为必不可少的一个信息交流平台。本文完成基于微信平台的校园信息查询系统的设计与实现,将相关信息发布在微信平台上,方便学生在微信上随时随地查询信息,并对系统的安全策略及测试效果进行了分析。
引言近年来,随着国内高校信息化的开展,很多高校已经构建了网络信息服务系统,而且信息化系统的移动终端发布方式也多种多样。这些网络信息系统的使用,极大地提高了办公效率,方便了师生获取相关信息。但是随着时代的发展和科技的进步,各种智能手机等移动终端逐渐普及,原来的信息发布架构在移动终端上出现了系统兼容性和界面友好性差等诸多问题,已经不能完全满足用户的新要求[1]。
面对诸多问题,很多研发人员推出了手机App,尽管在一定程度上能解决问题,但是传统的App开发周期长,推广费用较高,用户接受能力较差,占用空间多,升级维护比较繁琐,因此并不是一种合适的解决方法。很多人也尝试设计移动终端的发布方案,但会遇到一些问题,例如发布终端的平台和兼容性问题[2]、信息收集整理问题、接口的安全性等问题。
微信软件本身完全免费,也因为其灵活、方便、智能,且节省资费受到大家欢迎[3]。微信公众平台是腾讯公司在微信的基础上新增的功能模块,通过这一平台,个人和企业都可以打造一个微信的公众号,并实现和特定群体的文字、图片、语音等全方位沟通、互动[4]。它以其方便快捷的交流方式风靡高校,随着微信产品不断升级,校园微信平台发展潜力巨大。
本文就是利用微信平台的特点,将微信平台与高校的教务信息发布系统相结合。依靠这个平台,可以实现比如教学计划安排发布查询、课表安排查询、成绩查询、及时发布通知公告等功能。让学生在学校能够更加方便快捷地了解自己和学校的信息。同时对内能够给学校一个及时了解学生动态并进行学生思想教育工作的平台。对外能够形成一个学校品牌,塑造学校形象。
一、基于微信平台信息查询系统的设计
1.设计思路
以微信公众平台作为载体,将微信公众平台与高校内部教务系统进行对接,以服务为主,提供学生课程表查询,学生成绩查询,学期排名查询等服务,为学生提供一个更加方便快捷的服务平台,以此吸引学生关注此平台,从而实现用户通过微信查询各种校园信息的功能。本文设计基于微信平台的信息查询系统主要由用户、微信服务器、中间接口服务器以及各类的接口信息系统组成,其如图1所
图1 基于微信平台的信息查询系统
2.基于微信平台的信息系统的实现
微信查询系统主要由服务器模块、数据库模块、身份验证模块、课程表查询模块、成绩查询模块、排名查询模块、四六级查询模块的设计来实现。
(1)服务器模块:微信公众平台使用分为编辑模式和开发者模式。编辑模式可以根据预先设定的关键字进行对应的回复;而编辑者模式则可以编写程序根据需求实现不同的功能和消息回复。因此我们选择使用开发者模式实现该平台。目前选用Linux+PHP+MySQL平台做程序支撑。当用户发送消息时,微信官方服务器将用户消息以xml数据的形式转发到我们自己的服务器,经过我们的程序处理后,再按照指定的格式提交给微信官方服务器,再由微信官方下发给用户,从而实现一次消息的发送。服务器平台选用百度云[5]的免费服务器平台。
(2)数据库模块:列举一些重要的数据表作用。绑定信息表:主要存储微信OpenID与学生学号的对应关系;考试成绩表:分两张表存储,一张表存储最近一学期的成绩信息,另一张存储历史成绩信息,主要是因为最新一学期的成绩有可能随着新成绩的出现需要及时的更新,而且学生的关注力度比较大,查询次数较多,而往年的成绩大家都已经知晓,关注较少;学生信息表:这里主要存储学生在学校中的学号,专业班级等信息;课程安排表:主要存储各专业班级的课程安排信息。
(3)身份验证模块:身份验证需要学生通过浏览器页面来录入学生的身份信息与已经有的信息进行比对,程序中使用了学生学号和身份证号码前10位进行验证。在微信中,每一个微信用户都有一个唯一的OpenID值,用户验证通过后,将学生学号与OpenID值进行绑定,从而完成身份信息的认证与绑定。因为认证过程是在网页中实现,虽然通过网页实现较为灵活,但是容易被非法用户攻击,因此在认证页面中重点做了数据过滤的措施,以确保用户信息的安全。首先,判定用户是否使用微信登录此网页,打开网页时,网页head数据中会携带浏览器的信息,在Android和iOS的系统中,默认携带的头文件中包含有MicroMessenger字段,而在Windows Mobile操作系统中,头部携带IEMobile字段,以此来判定用户浏览器信息。其次,微信平台的OpenID虽然各不相同,但是同一个微信平台的OpenID值前六位都是唯一的,而且每一个OpenID都是28位的字符串。验证通过后再将用户的OpenID与数据库中的信息进行比对,如果该用户已经绑定了自己的账号,则禁止其再绑定其他的用户账号,如果没用,则向用户展示提交验证信息的页面。用户将验证信息提交后再次对浏览器,OpenID等信息进行判定,通过后再对用户提交的信息进行过滤,依照试验学校的惯例,学生证号为8位数字,身份证号码最多为18位,这里要求至少输入10位。全部验证通过后,将用户信息存储到数据库中,完成学生信息绑定。