论文范文网-权威专业免费论文范文资源下载门户!
当前位置:毕业论文格式范文>硕士论文>范文阅读
快捷分类: 小学信息技术论文 金融服务论文 生物信息学论文 电子信息工程毕业论文 电子信息工程专业论文 移动信息期刊 信息服务工程专业论文 公共服务信息花参考文献 信息和服务工程专业论文 信息管理和服务专业毕业论文 信息服务论文 信息管理和服务论文

信息服务毕业论文题目范文 与微信网页授权模式下图书馆信息服务的设计和实现*类在职研究生论文范文

分类:硕士论文 原创主题:信息服务论文 发表时间: 2024-01-26

微信网页授权模式下图书馆信息服务的设计和实现*,该文是信息服务相关大学毕业论文范文和微信和图书馆和模式相关论文范文.

黄雨生

(河南理工大学图书馆,河南焦作454000)

[摘 要]针对目前图书馆普遍使用微信公众平台开展服务的现状,为开发能力弱的编程人员提供一种难度小、功能强的技术实现方法,以实现更多移动信息服务功能.利用微信公众平台的网页授权接口权限,使用ASP和jQuery Mobile等编程技术,在用户授权情况下,获取用户微信号Openid,将其与图书馆读者证、进行绑定,进而实现借阅查询、预约通知等信息服务功能.通过绑定,减少了读者的输入次数和错误率,解决了手机小屏不容易输入文字的弊端,提升了图书馆移动服务的形象.

[关键词]网页授权微信号读者证绑定信息服务

[分类号]G250.7

微信公众平台是在微信业务基础上发展起来的一项订阅服务,可实现与特定群体在文字、图片、语音、视频等方面的全方位沟通和互动[1].据搜狐公众平台报道,微信公众平台数量在1500 万以上,并且每天以1 万以上的认证*在递增[2].微信公众平台的迅猛发展和强大功能已受到图书馆及其读者的欢迎和喜爱,如何将移动图书馆的资源、服务、特色与微信公众号集成和绑定[3],已成为图书馆技术部门的研究课题之一.

笔者结合河南理工大学图书馆自动化管理系统,对“微信网页授权”接口技术进行了研究,采用ASP 网页编程技术,设计出一种基于微信网页授权模式来绑定读者证的方法,实现了在手机微信客户端免登录查询读者个人借阅状况、预约通知等信息的功能.该方法脱离了微信公众平台的开发,基于图书馆现有网站和技术,经读者授权后获取读者微信号,并和读者证进行绑定,开发难度小,技术可行性强,适合已有建站经验的图书馆使用.

1 图书馆读者证与微信号绑定现状

图书馆读者证与微信号绑定的关键技术在于获取读者的微信号.读者证号可从自动化管理系统中轻松取得,但微信号需要读者授权才能获得.在对微信公众平台整体开发时,可从管理后台获取到读者的微信号,但微信公众平台的开发是一项技术性很强的工作,图书馆的编程人员技术水平参差不齐,开发力量薄弱,除少数编程技术实力雄厚的图书馆外,大多数图书馆对微信公众平台的整体开发较少,仅是依靠微信本身所提供的公众平台进行公众号的管理,功能比较单一,主要是定时发布信息[4].也有的图书馆委托微信第三方来管理,如“掌上大学”“微应用”“微盟”[5]等,虽然功能强大了一些,但因图书馆不能介入第三方的开发,也就无法获取读者微信号,实现绑定功能.

笔者在对我国39 所“985 高校”的图书馆微信公众号进行搜索和关注后发现,有微信公众号的34所,占87%,有微信公众号的图书馆但未提供绑定功能的有13 所,占38%(不包括南开大学的滨海学院图书馆),如表1 所示.统计结果表明:大部分“985 高校”的图书馆都已经在使用微信公众号这一新媒体平台,但38%的图书馆未实现绑定功能,非“985 高校”此比例还会更高.

微信公众号与读者证绑定后,可以实现许多便捷功能,特别是在一些需要登录才能使用的图书馆移动服务功能,如借阅查询、预约通知等,许多学者撰写了有关图书馆微信公众平台的设计与实现方面的文献[6-9].但这些文献无一例外都是利用微信平台提供的API 接口,通过自建服务器开发微信公众平台来实现绑定,但如笔者所述的脱离平台开发,仅利用第三方“网页授权”方式获取读者微信号,实现读者证绑定的文献,尚未发现.

2 微信号与读者证绑定的设计与实现

河南理工大学图书馆申请的微信公众平台(微信公众号为:hpulib)旨在为师生读者提供更优质全面的服务,但本馆同样存在开发能力弱的问题.因此,使用网页授权模式实现读者微信号与读者证的绑定,解决了技术人员的难题和压力,该功能的实现,大大提高了图书馆的服务质量,使本馆的信息服务工作更加人性化、简捷化、泛在化.

2.1 设计方案

微信号与读者证绑定的设计方案流程如图1 所示.微信用户从手机客户端访问引导地址进行授权(网页授权),微信服务器向引导地址中回调地址参数所指向的Web 服务器传送JSON 数据包,该数据包包含读者微信号等信息.开发者从JSON 数据包中取出用户的微信号OpenID(用户的唯一标识),将取到的OpenID 与绑定数据库中微信号字段进行比对,如果有相同的存在,表明该读者已经绑定,系统直接向用户客户端输出请求结果;如果不存在,则Web 服务器会返回一个绑定界面给用户,提示用户进行绑定,见图2.用户在绑定界面输入的读者证号(校园卡即为本馆读者证)和,经第三方服务器(图书馆自动化管理系统服务器)进行身份验证,确认是否为本馆的合法用户.如果身份信息正确,则将读者证号、连同微信号OpenID 三者一并写入绑定数据库中,实现绑定,同时在用户客户端输出请求结果.如果身份信息错误,则提示错误原因,需要用户重新输入正确的读者证号和.另外,根据自主自愿原则,允许用户随时在微信客户端解除绑定.

该设计方法的关键点是对微信服务器传送的JSON 数据包中微信号字符串进行提取,除此之外,不再对微信公众平台有任何的开发,其他像借阅查询等信息的输出,均是通过Web 服务的网页设计来实现,与传统的开发、制作网站一样,不存在额外的技术要求.

2.2 实现过程

2.2.1 前期准备工作

在进行绑定开发之前,开发者需要做以下工作:(1)申请微信公众*,并通过腾讯公司的认证,认证后方能获得网页授权的接口权限.微信公众号分为订阅号、服务号和企业号,本馆申请的微信公众号为订阅号.

(2)配备Web 服务器.该Web 服务器是开发者用来获取微信用户的OpenID,实现绑定功能的开发服务器,需要安装IIS(Internet Information Services,互联网信息服务)来运行授权网页.同时,还可安装数据库管理系统来保留读者证号、和微信号.按照微信授权网页接口的要求,该服务器必须具有域名,并且开放80 端口.

(3)回调域名设置.回调域名是Web 服务器域名,用来接收微信服务器传递的数据.开发者需要登录微信公众平台管理后台进行设置,在后台进入“开发-接口权限-网页服务-网页*-网页授权获取用户基本信息”的配置选项中,点击“修改”选项,进行授权回调域名的设置,即填入Web 服务器的域名.需要注意的是,这里填写的是域名,不能用IP 地址代替,也不能是URL,所以域名字符串前不加“http://”等协议头字样.

(4)开发者还需要知道图书馆自动化管理系统中的库表结构,尤其是读者账户表和流通信息表的数据结构,包括数据库各个字段名称、数据类型及字段含义等[10],以便在绑定后为输出读者借阅信息等提供可行性.

(5)设计绑定数据库结构.该数据库的作用是记录用户的微信号OpenID 和读者证号、等,为他们建立一一映射关系,字段至少应当包含微信号(Openid)、读者证(Ecard)、登录(Password)、绑定时间(updatetime)等信息,数据结构如表2 所示.

2.2.2 提供引导地址打开授权网页

通过网页获得用户授权的方式有两种:一种是不弹出授权页面,此方式只能获取包含OpenID 在内的少部分信息,是静默授权,即不需要用户同意也能授权;另一种是弹出授权页面,需要用户同意后,才能获得OpenID、昵称、性别、所在地等更多信息.笔者所述的开发实例只需要取得OpenID 即可,因此,采用第一种网页授权方式就能满足需求.

读者用户通过图书馆微信公众平台的菜单引导和自动回复方式,打开引导地址,进入授权网页:①在菜单引导方式中,设置菜单内容为跳转网页,页面内容输入引导地址“https://open.weixin..com/connect/oauth2/authorize?appid等于wx5ea1b0f33b71e04e&redirect_uri等于http% 3A% 2F% 2Flibwap.hpu.edu.cn%2Ftest.asp&response_type等于code&scope等于snsapi_base&state等于STATE#wechat_redirect”,用户在客户端点击菜单选项来进行网页授权;②在自动回复引导方式中,通过设定“绑定”或“捆绑”等关键字,将带有引导地址的超链接文本回复给用户,用户在点击超链接后,实现网页授权,超链接地址和菜单项中的引导地址相同.

引导地址的参数说明如表3 所示.使用引导地址时还需要注意两点:第一,由于授权操作安全等级较高,所以在发起授权请求时,微信会对授权链接做正则强匹配校验,如果链接的参数顺序不对,授权页面将无法正常访问;第二,为确保安全性,参数中的回调链接地址“http://libwap.hpu.edu.cn/test.asp”要使用urlencode 函数处理成“http% 3A% 2F%2Flibwap.hpu.edu.cn% 2Ftest.asp”格式才能正常使用.

2.2.3 提取读者微信号(OpenID)

用户在客户端点击菜单项或超链接进行网页授权后,页面将自动跳转至redirect_uri/?code等于CODE&state等于STATE 的地址,我们可以获得code 和state 两个参数(state 的值是引导地址中传递来的参数).接着,我们可在回调链接地址中请求以下链接获取OpenID:https://api.weixin..com/sns/oauth2/access_token?appid等于APPID&secret等于********&code等于CODE&grant_type等于authorization_code.该链接参数中,secret 是公众号的应用密钥(每个公众号都具有,可登录查看),code 是我们刚才获得的参数,grant_type等于authorization_code 是必须要带的固定参数.

上面地址发出请求后,微信服务器将会向WEB服务器传送JSON 数据包,样式如下:

{"access_token":"OezXcEiiBSKSxW0eoylIePIqFk6RVsIihSJnRZqwCpqGnXp8kGfUWhS4i51sEG2hItkWA-Ymd588z9vYkygZDtbJlJAASActkFmafbbOxrZgkgYVR3g3v6-lVGqMcitwFu-gSNP4uemAm6pMfQ",

"expires_in":7200,

"refresh_token":"OezXcEiiBSKSxW0eoylIePIqFk6RVsIihSJnRZqwCpqGnXp8kGfUWhS4i51sEGnzHcgci_ZSknEjrzYes4kqutuxf5P0OVn_VhyMOWdPqKKJb10lf3WuIQXN59OZyMyWOk3hDGR9H49-iNtiJtWQ",

"OpenID":"ompW-uDIGgG0QvMexQIIoDRR3nmM",

"scope":"snsapi_base"}

JSON 数据包中包含5 个参数:access_token 是网页授权接口调用凭证;expires_in 是access_token 接口调用凭证超时时间,默认是7200 秒;refresh_token是用于用户刷新access_token 时使用;OpenID 是授权用户微信号;scope 是用户授权的方式.笔者绑定的设计,只需要用到JSON 数据库包中OpenID 的值即可,别的参数只是在其他方面开发时才会用到.

从上述过程中获取OpenID 参数值的ASP 代码如下:

Dim strJson, getuserOpenIDurl, sJson, OpenIDGetuserOpenIDurl等于”https://api.weixin..com/sns/oauth2/access_token?appid等于APPID&secret等于

********&code等于传递的CODE 值&grant_type等于authorization_code”

strJson等于GetUrl(getuserOpenIDurl) ’请求地址以获取微信JSON 数据包

Call InitScriptControl ’调用Script 组件

Set objTest 等于 getJSONObject(strJson)

OpenID等于objTest.OpenID ’获取OpenID 的值

Sub InitScriptControl ’创建Script 组件

Set sJson 等于 Server.CreateObject("MSScriptControl.ScriptControl")

sJson.Language 等于 "JaScript"

sJson.AddCode "var itemTemp等于null;function getJSArray(arr, index){itemTemp等于arr[index];}"End Sub

Function getJSONObject(strJSON) ’解析jsonsJson.AddCode "var jsonObject 等于 " & strJSON

Set getJSONObject 等于 sJson.CodeObject.jsonObject

End Function

Function GetURL(url) ’获取URL 网页的内容dim http

set http等于server.createobject("Msxml2.ServerXMLHTTP")

http.open "GET",url,False

http.setRequestHeader "If-Modified-Since","0"

http.send()

GetURL等于http.responsetext

set http等于nothing

End Function

2.2.4 读者身份验证

读者身份验证,一是为了获取读者证号和,二是为了确定读者是否为合法用户.根据绑定界面用户输入的读者证号和,使用“SELECT”等SQL 语句查询图书馆自动化管理系统中的读者账户表,能够查询到的数据才是正确的*和,否则为不合法账户.关于身份验证技术,其他文章讨论很多,比较容易实现,这里不再赘述.

2.2.5 数据的绑定入库

使用前文提取到的OpenID 值,以及验证合法的读者证号和,将三者建立一一对应关系,保存到数据库中.绑定入库的代码如下:

Sub AddMsg() ´绑定入库

Dim StrSQL

strSQL 等于 "select * from [绑定数据库表]"

Set Rs 等于 Server.CreateObject("Adodb.RecordSet")Rs.Open strSQL,Conn,1,3

Rs.addnew

Rs("OpenID") 等于 微信号

Rs("ecard") 等于 读者证

Rs("password") 等于

Rs("Allow”) 等于 True ’绑定状态

Rs("updatetime") 等于 Now() ’绑定时间Rs.Update

Rs.Close: Set Rs 等于 Nothing

End Sub

至此,微信号和读者证的绑定才算成功.绑定后,读者在微信客户端查询个人借阅信息、图书预约通知、进行图书续借操作时,不需要重复输入个人读者证号和,系统即可根据授权的微信号,从绑定数据库中获取到读者证号和,再到图书馆自动化管理系统中进行验证,并提取出相应的请求数据,在微信客户端进行输出.此设计减少了读者的输入次数和错误率,解决了手机小屏不容易输入文字的弊端.

3 河南理工大学图书馆应用实效

河南理工大学图书馆微信订阅号为:hpulib,已通过腾讯公司的认证,现在关注人数7200 名.Web服务器为Windows 2003 系统,安装有IIS 6.0 和SQLServer 2008,开发语言使用的是ASP 技术和jQueryMobile 技术.ASP 是动态服务器页面(Active ServerPages)的英文缩写,是微软公司开发的代替CGI 脚本程序的一种应用,能够动态产生Web 页面.ASP可以与Web 数据库以及其他程序进行交互,是一种简单、方便的编程工具[11].jQuery Mobile 技术编写的网页,适合创建移动端Web 应用,且功能强大.

自图书馆实现微信号绑定读者号的一个月内,从绑定数据库发现有1705 人进行了绑定,占总关注人数的23.7%,而这一个月内的新增关注人数为143人,占总关注人数的2%.从微信公众平台中管理后台对菜单分析结果来看,绑定直接有关系的子菜单包括“图书查询”“借阅信息”“预约通知”.其中,前两项的菜单点击次数、点击人数以及人均点击次数都较其他菜单要高,在所有菜单中排列最靠前,“预约通知”是读者预约的图书归还后对读者的通知信息,相对使用率较低,见表4.

图书馆的读者除了在第一次使用时进行绑定外,以后不再重复输入读者证号和,就能直接在移动端获取个人借阅信息、预约通知等,迎合了学生用户“微信一族”的移动应用需求,深受读者喜爱,客户端查询效果如图3 所示.目前该功能已经成为不校图书馆微信公众号不可缺少的重要功能,后期将会在此基础上继续深入开发,以扩大服务效果.

4 结语

微信功能强大,利用网页授权进行功能开发,只是其众多接口权限中的一项功能.要使微信公众号更好地为图书馆服务,实现更多的业务功能,如加入图书馆座位预约、借还提醒、微信缴费、关联网络图书资源[12]等,就需要加大对微信公众平台的开发力度.希望笔者的研究能够给图书馆同行提供借鉴,多加利用微信公众平台开放的接口,使图书馆的业务更加贴近用户体验,服务更加全面细致,以加快图书馆移动信息服务的推广.

参考文献:

[1] 欧阳敏.微信让你生活更精彩[M].北京:北京工业大学出版社,2013.

[2] 搜狐公众平台.分析微信公众平台不得不知道的数据[EB/OL].[2016-12-02].http://mt.sohu.com/20160921/n468884820.shtml.

[3] 叶海智,刘强,尹丹丹.基于微信的图书馆移动信息服务设计与实现[J].软件导刊,2013(11):88-90.

[4] 李丹,李娟.微信和图书馆业务及应用系统整合研究[J].现代图书情报技,2014(12):97-104.

[5] 小谦.生态微变,微信第三方未来何在?[J].软件工程师,2014(8):63-64.

[6] 佘静涛.高校图书馆微信服务平台的设计与实现——以浙江工业大学图书馆为例[J].现代图书情报技术,2016(Z1):147-153.

[7] 朱白.基于微信公众平台的图书馆通用数据库查询系统设计与实现[J].图书馆理论与实践,2016(8):85-88.

[8] 陈作新,王玉香,刘大鹏.高校图书馆微信公众平台设计与实现——以辽宁科技大学图书馆为例[J].情报探索,2016(1):72-79.

[9] 郭利敏,张磊,赵亮.图书馆微信服务应用开发——以上海图书馆为例[J].现代图书情报技术,2014(5):96-101.

[10] 黎邦群.基于微信公众平台的图书借还提醒服务[J].惠州学院学报,2014(6):64-69.

[11] 百度百科.ASP(动态服务器页面)[EB/OL].[2016- 10- 01].http://baike.baidu.com/subview/2616/14622918.htm.

[12] 李丹,闫晓第,魏青山.Drupal的混搭技术在图书馆的应用[J].现代图书情报技术,2013(10):79-84.

黄雨生男,1974 年生.硕士,高级工程师.研究方向:计算机应用.

(收稿日期:2017-03-13;责编:王天泥.)

归纳总结:这篇文章为一篇适合微信和图书馆和模式论文写作的大学硕士及关于信息服务本科毕业论文,相关信息服务开题报告范文和学术职称论文参考文献.

参考文献:

1、 基于微信公众平台的大学生就业信息分析 魏雪莲 苗琳 刘鑫 钱飞鹏(西安工业大学北方信息工程学院,陕西 西安 710032)摘要微信作为新兴媒体已经在高校的大学生职业指导和就业服务工作中起到了越来越重要的作用 据此,通过依托微信公众平台收集.

2、 网络环境下图书馆借阅服务和信息服务 进入21世纪之后,信息技术和网络技术蓬勃发展,人们获取信息的渠道逐渐向多元化方向转变 但是从目前来看,人们在图书馆进行借阅服务时,仍然用传统的信息借阅方式、下载方式以及超文本索取方式,符合读者的实际需.

3、 新形势下图书馆特色服务的多领域 赵晓丹(河南省图书馆,河南郑州450052)关键词图书馆创新;特色服务;数字化;社会影响力摘要图书馆是面向社会开放的公益性服务机构,随着社会的快速发展产生了深刻的历史变革 新形势下,图书馆自身特色构建.

4、 数字时代下图书馆读者服务模式的 陈燕丹(深圳市福田区图书馆,广东深圳518034)关键词数字时代;图书馆;读者服务;创新摘要数字时代的到来,对图书馆读者服务工作的服务理念、媒介、宣传和读者反馈……方面产生了重要影响 文章梳理了数字时.

5、 新媒体环境下图书馆信息服务 关键词新媒体;图书馆;信息服务摘要信息技术及互联网技术的不断发展,对图书馆信息服务造成了极大的冲击,尤其是网络媒体及移动媒体得到普及以后,信息的获取途径增多 在新媒体环境下,如何更好地利用新媒体,进一.

6、 微时代下图书馆读者服务策略 陈世慧(潍坊市奎文区图书馆,山东 潍坊261000)关键词“微时代”;图书馆;读者服务;策略研究摘要随着“微时代”的到来,图书馆要不断进行改革,更好地服.