网站大量收购独家精品文档,联系QQ:2885784924

体验构建学校开放API.docVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
体验构建学校开放API.doc

体验构建学校开放API   引言   目前,众多教学管理系统的涌现,给学校教育带来便利的同时也带来了不少挑战。很多学校多个信息系统由于时间和开发公司的差异,造成各教育教学系统数据相互隔离,无法进行共享。未来,数据将是学校发展中最为重要的资源,目前这样的态势势必会让学校收集、分析、转移教学数据消耗大量的人力物力,还要面对其间产生的各种错误。因此,建设学校的新型架构数据中心,向学校所有应用提供基础数据,同时能接收学校所有应用所产生的数据,打通其中的数据通道,对数据进行有效整理和挖掘,是每所有现代教育情怀的学校的努力方向。建立自己的开放API就是一种有效的尝试,API是应用程序编程接口(Application Programming Interface)三个首字母的缩写,而开放API(Open API)是服务型网站常见的一种应用,网站的服务商将自己的网站服务封装成一系列API开放出去,供第三方开发者使用。Amazon和eBay等公司很早就有开放API,但是对应的数据往往集中在商品上,与人们的日常互联网应用有一定的距离。真正推动整个互联网开放的发端,应该算是Google在2005年开放Google Maps的API,目前谷歌公司提供的API相对完整,大部分谷歌服务都有相对应的API可以调用,下面我示范如何使用经典的Google Maps API将谷歌地图加入到网页中(如图1)。   考虑到PHP作为一种卓越的脚本语言,具有跨平台(可运行在UNIX、LINUX、Windows、Mac OS下)、低消耗(PHP消耗相当少的系统资源)、运行效率高等优点,本文中范例前后端网页也由PHP来说明:bj.php用来显示复选列表,用户只要选择目标位置,然后点击浏览地图,就会调用map.php,其中下页图2所示的bj.php第7~10行为PHP代码,定义了一个名为bj_address的数组来存放目标位置的地址信息,若景点个数多,此处也可以改用数据库存放相关数据。第13~19行为插入一个表单,里面包含有四个位置的复选列表和一个浏览地图按钮,各个项目的value属性被指定为各个位置的地址信息,当用户单击“浏览地图”按钮后,就会执行action属性指定的map.php表单处理页面。   我们再来观察下页图3所示的处理程序map.php,原本的地图功能,可能会让读者觉得程序代码很繁杂,其实不然!这主要是因为有了Google Maps API的帮助,其中第4行就是载入一个Google Maps API;第7~14行定义一个initialize函数,负责地图的初始化工作,建立属于google.maps的相关类,并调用第15~28行codeAddress()函数。第32行的value就是用户在bj.php页面中选中的目标位置的地址,使得第16行就是利用这个元素获取要在地图上做标记的地址。   在我们对开放API有了初步体验后,下面就构造了这样一个情境模式:为适应移动办公需要,对学校原有的Web邮件系统建立一个开放API,以方便移动应用开发公司调用作为范例来大致描述通过PHP连接原有数据库、生成JSON格式的开放API、调用开放API这一过程。   过程示范   1.连接原有数据库   创建一个连接学校现有MS SQL SERVER的func.php,图4所示的关键代码表明其是连接到数据库服务器(9)上的SCHOOL_ERP的数据库。在该数据库中只需配给“apiuser”用户读取权限即可(注:PHP在高版本上需要使用sqlsrv扩展对Sql Server进行连接,安装过程略)。   2.构建JSON格式的开放API   用readmail.php来构建,下页图5截取了关键之处并做出解释,第3~4行为应用上一级目录下的func.php,设置输出到浏览器的类型和编码,第5行表示以GET方式获取提供的教师姓名传递给name变量,转换name的编码为gbk,由于学校原始数据库是微软SQL Server,当前编码为gbk编码,第10行是一句符合我们预期API调用的一条SQL查询语句,第11~13行是为了防止SQL注入,创建一个预处理语句,将$name的值绑定到上面$sql变量里的“?”部分,第14行定义了一个数组,用于保存后面输出的数据。第15~18行用while遍历数据,其中sqlsrv_fetch_array函数获取了执行后的结果,赋值到$result变量中,对数据中的send_dt数据进行处理,把处理好的数据保存到$arr数组里。第19~20行将获得的数据编码转换为utf8(防止输出时数据乱码),使用json_encode函数,封装获得的结果,并且输出。   这时就生成了一位教师的最近5封邮件信息的API接口“http:///cjcxcs/a

文档评论(0)

guan_son + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档