随着微信用户的增加(目前全球有近5亿人在使用微信),越来越多人意思到,通过微信公众平台实现大量微信应用,可以拥有大量的用户群,可以助力品牌拓展。但是现在微信官方的公众平台有很多缺陷,包括功能单一、操作复杂、用户体验差、没有差异化功能等。本课题旨在开发一个简易的第三方微信公众平台管理系统,帮助用户简化操作,完善功能。
1.2 课题开发环境与目标
本设计前端运用jQuery,HTML,Bootstrap技术,后端运用C#工具语言,ASP.NET的Web开发技术,数据库运用SQL Server 2008 R2。通过查阅资料,结合所学知识,在导师的指导下,开发出一个操作简单,用户体验良好,有定制功能,可拓展的简易第三方微信公众平台管理系统。
2 核心相关的概念与技术
2.1 微信消息收发原理
图2-1 微信消息收发原理图
从上图可以看出,用户在发送一个请求后,微信服务器将请求发送给我们平台,我们平台根据请求回复相应内容给微信服务器,微信服务器再回复给用户。微信服务器将请求发送给我们,以及我们将内容回复给微信服务器,都是通过微信公众平台开发接口,以xml格式在后台进行传输的。所以掌握微信公众平台开发接口,掌握各种消息类型的接收回复就是进行微信公众平台开发的基础!
2.2 微信公众平台开发接口
应用程序编程接口,简称API(Application Programming Interface),就是软件系统不同组成部分衔接的约定。随着软件规模的日益庞大,我们需要把复杂系统划分成小的组成部分,编程接口的设计十分重要。程序设计的实践中,编程接口的设计首先要使系统的职责得到合理划分。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的维护性和扩展性[3]。论文网
微信公众平台开发接口提供与用户进行消息交互、自定义菜单交互的能力。对于成功接入公众平台开发接口的公众账号,当用户发消息给公众号,微信公众平台服务器会使用http请求对接入的网址进行消息推送,第三方服务器可通过响应包回复特定结构,从而达到回复消息的目的[5]。
2.3 AJAX技术
AJAX是“Asynchronous Javascript + XML”的英文缩写,是一种网页开发技术。一般用于创建快速动态网页。
AJAX 能够实现网页的异步更新,只需要在后台与服务器进行少量交互。这意味着可以在不刷新网页的情况下,对网页的局部进行更新。传统的网页(不使用 AJAX)如果需要更新内容,必须重载整个网页面。AJAX 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面[6]。
3 本设计使用接口介绍
3.1 基础接口
3.1.1 获取access token
access_token是微信公众号的全局唯一凭证,公众号调用各接口时都离不开access_token。公众号需要使用AppID和AppSecret调用接口获取access_token。AppID和AppSecret由用户微信号提供。调用接口时需要使用https协议
接口调用请求说明
http请求方式: GET
https://api.weixin.qq。com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
参数说明
图3-1 token接口参数图