目 录
摘 要 I
Abstract II
目 录 V
1 绪论 1
1.1研究背景 1
1.2研究课题和意义 2
1.3研究内容和论文结构 3
2 移动网络环境下图书管理系统的现状分析 4
2.1移动网络环境下图书管理系统的特点 4
2.2当前国内外移动网络环境下图书管理系统的现状 7
2.3微信给移动网络环境下图书管理系统带来的影响 8
3 微信小程序开发相关技术介绍 11
3.1微信小程序介绍 11
3.1.1微信介绍 11
3.1.2微信小程序简介 12
3.1.3微信小程序基本功能 13
3.1.4微信小程序高级功能 14
3.2微信小程序开发技术的介绍 15
3.2.1java 15
3.2.2Javascript 15
3.2.3XML 16
3.2.4HTML5 17
4 基于微信小程序的图书管理系统功能模块设计 18
4.1基于微信小程序的图书管理系统需求分析 18
4.1.1平台用户的功能需求 18
4.1.2平台商家的功能需求 19
4.2基于微信小程序的图书管理系统功能模块设计 20
5 基于微信小程序的图书管理系统开发与实现 21
5.1基于微信小程序开发概述 21
5.1.1微信小程序开发模式的数据交互方式 21
5.1.2微信小程序开发模式的接口 22
5.2微信小程序消息接口简介 23
5.2.1消息推送 23
5.2.2消息回复 25
5.3基于微信小程序的图书管理系统核心模块的实现 27
5.3.1基于框架开发 27
5.3.2代码目录结构 28
5.3.3自动回复需求的实现 29
5.3.4小程序管理功能 30
5.3.5微信用户中心 30
5.3.6关注欢迎语 30
5.3.7自定义回复 31
5.3.8智能聊天 34
5.3.9建议意见留言 34
5.3.10会员卡 36
5.3.11自定义菜单 41
5.3.12融合第三方功能扩展 44
6 基于微信小程序的图书管理系统功能测试 47
6.1测试环境 47
6.2具体测试 47
6.3测试结果 49
7 总结与展望 50
7.1作品总结 50
7.2未来展望 50
致 谢 52
参考文献 53
5 基于微信小程序的图书管理系统开发与实现
5.1基于微信小程序开发概述
5.1.1微信小程序开发模式的数据交互方式
微信小程序开发模式的数据交互线路可以简单地归纳为“用户—微信服务器—第三方服务器—微信服务器—用户”,每一次的数据交互的过程都是由用户发送消息而发起的。微信小程序开发模式提供的消息接口是指导数据进行交互的行为标准。如果微信公众帐号启用了开发模式并接入了消息接口,当用户向公众账号发送消息时,微信小程序的服务器将消息通过HTTP 请求推送给第三方服务器,第三方服务器则根据我们预设的规则进行响应,并回复指定的消息[15]。通俗的来讲,就是我们可以通过自己编写的程序让微信公众帐号自动地和用户进行对话。
使用了开发模式的微信公众账号就像一个预设了高级规则的账号,用户在和公众帐号进行互动的时候,可以获取相应的信息反馈。而如何获得相应的信息反馈则需要根据公众平台提供的开发接口通过第三方服务器实现。用户、微信后台和我们开发的公众账号后台的第三方服务器三者之间形成了一个信息交互的关系,如图5-1所示。

图5-1 用户、微信后台和第三方服务器间的交互图
对于图5-1 中的交互过程具体的描述如下:
(1)用户在向微信公众账号发送一条消息,并到达微信小程序的服务器后台;
(2)微信后台将消息转发给公众账号的第三方服务器,也就是我们开发的微信图书管理系统所在的服务器;
(3)第三方服务器收到请求后,解析消息格式,对消息进行处理,并将处理后的结果返回给微信后台;
(4)微信后台把第三方服务器的处理结果回复给用户,这样用户在微信上就看到了公众账号回复的消息了。
在这个过程中,我们的第三方服务器需要做的三件事情:获取微信后台发过来的消息,按照预设的规则进行信息处理,发送返回消息给微信后台。
5.1.2微信小程序开发模式的接口
应用程序编程接口,简称API(Application Programming Interface),它是为了方便程序软件中各个组成部分之间进行连接而指定的规则。现在各种应用软件的规模变得越来越大,为了更高效地进行软件的开发维护,我们把庞大且复杂的软件程序划分成为一个个较小的组成部分,每个部分之间都是通过编程接口进行衔接的,重视设计编程接口的工作也就变得理所应当。在程序设计的工作中,设计编程接口第一个要考虑的就是合理地划分软件程序的各个功能模块。设计合理的接口可以降低系统各功能模块之间相互的依赖性,提高各个功能模块的内聚性,降低个各功能模块之间的耦合程度,从而提高整个软件程序的稳定性和扩展性[16]。微信接口开发及公众平台消息接口就是这样的一种用于处理消息编程接口。
微信小程序的API接口有两种,分别为:消息接口和通用接口。通用接口可以实现获取用户个人资料,上传图片、视音频文件,消息的主动推送等功能。通用接口提供的这些功能更多的是帮助消息接口回复图片、语音和视频等多媒体消息,以及向用户推送一些个性化的消息。而消息接口的主要功能则是对用户向微信小程序发送的消息的处理,利用消息接口的规则可以编程预设一些处理规则,来获取特定的处理结果,并将处理结果返回给微信后台,再经过微信后台的解析后回复给用户 [17]。
5.2微信小程序消息接口简介
5.2.1消息推送
当普通微信用户向公众账号发消息时,公众平台将POST该消息到填写的Url上(现支持文本消息以及地理位置消息)。消息将以使用xml格式推送,接下来将对消息xml格式进行具体说明。
(1)文本消息xml格式

<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[fromUser]]></FromUserName> <CreateTime>1348831860</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[this is a test]]></Content><MsgId>1234567890123456</MsgId>
</xml>

























微信小程序图书管理系统相关推荐

  1. 基于微信小程序图书借阅管理系统(微信小程序毕业设计)

    基于微信小程序图书借阅管理系统 图书借阅管理系统用户端是基于微信小程序,管理员端是基于java编程语言,mysql数据库,ssm框架,idea工具开发,本系统是分为用户和管理员两个角色,其中用户的主要 ...

  2. 微信小程序药店管理系统+后台管理系统|前后分离VUE

    <微信小程序药店管理系统+后台管理系统|前后分离VUE>该项目含有源码.论文等资料.配套开发软件.软件安装教程.项目发布教程等 本系统包含微信小程序前台和Java做的后台管理系统,该后台采 ...

  3. 微信小程序招聘管理系统+后台管理系统

    <微信小程序招聘管理系统+后台管理系统>该项目含有源码.论文等资料.配套开发软件.软件安装教程.项目发布教程等 本系统包含微信小程序做的招聘管理系统前台和Java做的后台管理系统: 微信小 ...

  4. 基于微信小程序游泳馆管理系统(微信小程序毕业设计)

    基于微信小程序游泳馆管理系统 游泳池管理系统是基于微信小程序开发,其后端采用java编程语言,mysql数据库,ssm框架和idea开发工具开发:本系统主要分为用户和管理员两个角色,其中用户的主要功能 ...

  5. 【程序源代码】微信小程序商城管理系统(java后台+小程序)

    关键字:微信小程序 商城管理系统 正文 | 内容 01 - [概述] 基于 微信小程序 + springboot + vue 技术构建 ,支持单店铺,多店铺入驻的商城平台.项目包含 微信小程序,管理后 ...

  6. 【程序源代码】微信小程序商城管理系统(Java后台+微信小程序)最新版

    关键字:微信小程序 商城系统 02 - [技术框架] 微信小程序商城管理系统(Java后台+微信小程序) 基于Spring+Vue+Mysql+Redis主流技术开发框架集成开发的微信商场管理系统:其 ...

  7. 毕业设计:微信小程序健康管理系统的开发与实现

    作者主页:编程指南针 作者简介:Java领域优质创作者.CSDN博客专家 .掘金特邀作者.多年架构师设计经验.腾讯课堂常驻讲师 主要内容:Java项目.毕业设计.简历模板.学习资料.面试题库.技术互助 ...

  8. 基于ssm开发得微信小程序社区管理系统

    分享一个自己在学校学习开发的一个后台ssm框架前段小程序的社区管理系统,花了很多的时间设计和开发,麻雀虽小,五脏俱全,大家可用于学习.毕设.或者二次开发.其功能主要有:微信小程序物业管理系统,微信小程 ...

  9. 微信小程序论文管理系统+后台管理系统

    <微信小程序论文管理系统+后台管理系统>该项目含有源码.论文等资料.配套开发软件.软件安装教程.项目发布教程等 本系统包含微信小程序做的论文管理系统前台和Java做的后台管理系统: 微信小 ...

  10. 基于微信小程序商店管理系统源码成品(微信小程序毕业设计)

    基于微信小程序商店管理系统 商店管理系统是基于微信小程序,java编程语言和mysql数据库和idea开发工具作为后台,微信端采用微信开发工具开发.本系统分为用户和管理员两个角色,用户的主要功能有登陆 ...

最新文章

  1. 新ITC提交APP常见问题与解决方法(Icon Alpha,Build version,AppIcon120x120)(2014-11-17)
  2. 百度网络推广介绍网站在更换老域名时都需注意哪些?
  3. 如何动态添加修改删除定时任务
  4. 删除或修改本地Git保存的账号密码
  5. 图解 _INTSIZEOF(n)
  6. ShuffleNetv2的学习笔记
  7. HBase模式设计之ID顺序增长(rowkey顺序增长)
  8. oracle数据库数据表误删后,恢复数据处理方式
  9. Collection如何转成stream以及Spliterator对其操作的实现
  10. 智能家居火了这么久 何时到我家?
  11. python通讯录管理程序的用户可行性_通讯录管理系统可行性分析报告
  12. 华为盒子EC6108V9/V9U/V92/V97-HI3798MV100(免拆机-通刷固件)卡刷固件及教程
  13. 一百个你不应该继续用Dev C++的理由
  14. 多节点部署执行定时任务选举单一节点解决方案---redis
  15. Excel2013利用图标集在单元格内加上各式各样的图标来表示状态
  16. linux中选取一行的命令,使用cut选择一行中的部分内容--用Enki学Linux系列(13)
  17. word2vec——训练自己的word2vec模型
  18. java的枚举类型是什么_什么是枚举(java枚举类型enum用法)
  19. 计算机鼠标不动了,计算机鼠标不动了怎么解决?
  20. SQL Server 代理 显示异常,未开启

热门文章

  1. 笔记本按开机键没反应怎么办
  2. pg_auto_failover 之四 manual failover
  3. yolov4与yolov5的区别
  4. shopify 与国内第三方建站服务平台的比较(店匠、shopline、shopyy、ueeshop)
  5. java 不能回滚_在Java 8中回滚()语句执行失败的最佳方法是什么?
  6. matlab 读取pts_matlab读取tiff卫星遥感图像和地理信息并转化为点云
  7. Oracle审计与数据库防火墙(AVDF)介绍
  8. 时间序列多步预测的一般方法
  9. SSH-keygen用法
  10. 基于51单片机俄罗斯方块游戏电路设计