999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

體驗構(gòu)建學(xué)校開放API

2017-01-03 22:23:30金琦
中國信息技術(shù)教育 2016年23期
關(guān)鍵詞:數(shù)據(jù)庫學(xué)校教育

金琦

引言

目前,眾多教學(xué)管理系統(tǒng)的涌現(xiàn),給學(xué)校教育帶來便利的同時也帶來了不少挑戰(zhàn)。很多學(xué)校多個信息系統(tǒng)由于時間和開發(fā)公司的差異,造成各教育教學(xué)系統(tǒng)數(shù)據(jù)相互隔離,無法進行共享。未來,數(shù)據(jù)將是學(xué)校發(fā)展中最為重要的資源,目前這樣的態(tài)勢勢必會讓學(xué)校收集、分析、轉(zhuǎn)移教學(xué)數(shù)據(jù)消耗大量的人力物力,還要面對其間產(chǎn)生的各種錯誤。因此,建設(shè)學(xué)校的新型架構(gòu)數(shù)據(jù)中心,向?qū)W校所有應(yīng)用提供基礎(chǔ)數(shù)據(jù),同時能接收學(xué)校所有應(yīng)用所產(chǎn)生的數(shù)據(jù),打通其中的數(shù)據(jù)通道,對數(shù)據(jù)進行有效整理和挖掘,是每所有現(xiàn)代教育情懷的學(xué)校的努力方向。建立自己的開放API就是一種有效的嘗試,API是應(yīng)用程序編程接口(Application Programming Interface)三個首字母的縮寫,而開放API(Open API)是服務(wù)型網(wǎng)站常見的一種應(yīng)用,網(wǎng)站的服務(wù)商將自己的網(wǎng)站服務(wù)封裝成一系列API開放出去,供第三方開發(fā)者使用。Amazon和eBay等公司很早就有開放API,但是對應(yīng)的數(shù)據(jù)往往集中在商品上,與人們的日常互聯(lián)網(wǎng)應(yīng)用有一定的距離。真正推動整個互聯(lián)網(wǎng)開放的發(fā)端,應(yīng)該算是Google在2005年開放Google Maps的API,目前谷歌公司提供的API相對完整,大部分谷歌服務(wù)都有相對應(yīng)的API可以調(diào)用,下面我示范如何使用經(jīng)典的Google Maps API將谷歌地圖加入到網(wǎng)頁中(如圖1)。

考慮到PHP作為一種卓越的腳本語言,具有跨平臺(可運行在UNIX、LINUX、Windows、Mac OS下)、低消耗(PHP消耗相當少的系統(tǒng)資源)、運行效率高等優(yōu)點,本文中范例前后端網(wǎng)頁也由PHP來說明:bj.php用來顯示復(fù)選列表,用戶只要選擇目標位置,然后點擊瀏覽地圖,就會調(diào)用map.php,其中下頁圖2所示的bj.php第7~10行為PHP代碼,定義了一個名為bj_address的數(shù)組來存放目標位置的地址信息,若景點個數(shù)多,此處也可以改用數(shù)據(jù)庫存放相關(guān)數(shù)據(jù)。第13~19行為插入一個表單,里面包含有四個位置的復(fù)選列表和一個瀏覽地圖按鈕,各個項目的value屬性被指定為各個位置的地址信息,當用戶單擊“瀏覽地圖”按鈕后,就會執(zhí)行action屬性指定的map.php表單處理頁面。

我們再來觀察下頁圖3所示的處理程序map.php,原本的地圖功能,可能會讓讀者覺得程序代碼很繁雜,其實不然!這主要是因為有了Google Maps API的幫助,其中第4行就是載入一個Google Maps API;第7~14行定義一個initialize函數(shù),負責地圖的初始化工作,建立屬于google.maps的相關(guān)類,并調(diào)用第15~28行codeAddress()函數(shù)。第32行的value就是用戶在bj.php頁面中選中的目標位置的地址,使得第16行就是利用這個元素獲取要在地圖上做標記的地址。

在我們對開放API有了初步體驗后,下面就構(gòu)造了這樣一個情境模式:為適應(yīng)移動辦公需要,對學(xué)校原有的Web郵件系統(tǒng)建立一個開放API,以方便移動應(yīng)用開發(fā)公司調(diào)用作為范例來大致描述通過PHP連接原有數(shù)據(jù)庫、生成JSON格式的開放API、調(diào)用開放API這一過程。

過程示范

1.連接原有數(shù)據(jù)庫

創(chuàng)建一個連接學(xué)校現(xiàn)有MS SQL SERVER的func.php,圖4所示的關(guān)鍵代碼表明其是連接到數(shù)據(jù)庫服務(wù)器(10.8.32.89)上的SCHOOL_ERP的數(shù)據(jù)庫。在該數(shù)據(jù)庫中只需配給“apiuser”用戶讀取權(quán)限即可(注:PHP在高版本上需要使用sqlsrv擴展對Sql Server進行連接,安裝過程略)。

2.構(gòu)建JSON格式的開放API

用readmail.php來構(gòu)建,下頁圖5截取了關(guān)鍵之處并做出解釋,第3~4行為應(yīng)用上一級目錄下的func.php,設(shè)置輸出到瀏覽器的類型和編碼,第5行表示以GET方式獲取提供的教師姓名傳遞給name變量,轉(zhuǎn)換name的編碼為gbk,由于學(xué)校原始數(shù)據(jù)庫是微軟SQL Server,當前編碼為gbk編碼,第10行是一句符合我們預(yù)期API調(diào)用的一條SQL查詢語句,第11~13行是為了防止SQL注入,創(chuàng)建一個預(yù)處理語句,將$name的值綁定到上面$sql變量里的“?”部分,第14行定義了一個數(shù)組,用于保存后面輸出的數(shù)據(jù)。第15~18行用while遍歷數(shù)據(jù),其中sqlsrv_fetch_array函數(shù)獲取了執(zhí)行后的結(jié)果,賦值到$result變量中,對數(shù)據(jù)中的send_dt數(shù)據(jù)進行處理,把處理好的數(shù)據(jù)保存到$arr數(shù)組里。第19~20行將獲得的數(shù)據(jù)編碼轉(zhuǎn)換為utf8(防止輸出時數(shù)據(jù)亂碼),使用json_encode函數(shù),封裝獲得的結(jié)果,并且輸出。

這時就生成了一位教師的最近5封郵件信息的API接口“http://wx.ourschool.cn/cjcxcs/api/getemail.php”,在此我們可以嘗試直接將某位教師的姓名作為name變量傳遞參數(shù)代入,向開放API發(fā)出GET請求。獲得JSON格式的文本后,將文本按照JSON格式解碼,如圖6所示。

開放API的數(shù)據(jù)格式一般有JSON(JavaScript Object Notation)和XML(EXtensible Markup Language)兩種,考慮到簡潔性和輕量性,我們通常會使用JSON,它方便人們進行閱讀和編寫,同時也方便了機器進行解析和生成。讀者可以到http://json.cn網(wǎng)站了解和在線解析JSON結(jié)構(gòu)(如圖7)。

3.通過AJAX構(gòu)建終端顯示

通過使用AJAX(異步JavaScript和XML)異步獲取的方式調(diào)用上述的API,進而解析接口返回的JSON,就可以在相關(guān)Web App里顯示用戶頁面(如下頁圖8)。

以上是根據(jù)學(xué)校現(xiàn)有的動態(tài)網(wǎng)站進行了接口開發(fā),以方便后繼應(yīng)用進行開發(fā),但還有一些情況是依靠學(xué)校現(xiàn)有條件無法進行后繼開發(fā)的,最為典型的就是短信應(yīng)用,如我校微信報修平臺需要將維修信息發(fā)給修理師傅,除了微信通知外,為了能更及時傳送,又加上一條運營商維修短信通知,功能如下頁圖9所示。

這時我們可到國內(nèi)在線某API數(shù)據(jù)供應(yīng)商處進行體驗申請短信API。申請后,會在后臺看到該API的配置服務(wù)信息,需要指出的是,商業(yè)化的API請求通常為HTTP GET方式,返回數(shù)據(jù)為JSON格式,為了防止API被濫用或惡意使用,要求每個API使用者都要申請一個API Key,每個API Key對應(yīng)唯一的一個API使用者,下頁圖10中的AppKey即為我校的一個API Key。

接下去可以創(chuàng)建一個短信模板,如“【報修平臺】收到的新的來自#name#的報修信息,分類為:#app#”,#號中間的變量由開發(fā)者自行定義(如圖11)。

然后根據(jù)圖12的主要代碼段創(chuàng)建一個短信通知頁面,這樣接到報修后可短信快速通知維修人員維修。第3行表示篩選出接收短信權(quán)限的對象,用戶報修后,數(shù)據(jù)庫會執(zhí)行一條插入語句,進而觸發(fā)到第10行的短信供應(yīng)商API接口處傳遞數(shù)據(jù),第13~16行為具體的傳遞數(shù)據(jù)(API KEY、發(fā)送號碼、自定義的模板號和模板中顯示的變量數(shù)據(jù))。

上例在演示學(xué)校構(gòu)建自身基礎(chǔ)API的同時,還借用了成熟商業(yè)平臺的開放API,我想這種模式可能也正是開放API的意義所在。如果教育工作者能意識到這種開發(fā)模式是一種挑戰(zhàn),一種創(chuàng)新,更是一種機會,有意識地讓學(xué)校開發(fā)的教育教學(xué)資源系統(tǒng)更符合這個時代需要的標準和規(guī)范,直接將標準化后的數(shù)據(jù)提供給開發(fā)者,將極大地提高開發(fā)者的工作效率,也將提高學(xué)校的信息化效率。如果還能在上級教育主管機構(gòu)統(tǒng)籌規(guī)劃下,形成區(qū)域和校際間的一個完整、統(tǒng)一的教育教學(xué)數(shù)據(jù)開放API,則能讓區(qū)域乃至全國教育教學(xué)數(shù)據(jù)趨向完整、開放,進而真正做到直接交換和共享信息,勢必會開啟一個教育類創(chuàng)新的新時代。

猜你喜歡
數(shù)據(jù)庫學(xué)校教育
國外教育奇趣
華人時刊(2022年13期)2022-10-27 08:55:52
題解教育『三問』
當代陜西(2022年4期)2022-04-19 12:08:52
教育有道——關(guān)于閩派教育的一點思考
辦好人民滿意的首都教育
數(shù)據(jù)庫
財經(jīng)(2017年2期)2017-03-10 14:35:35
學(xué)校推介
留學(xué)生(2016年6期)2016-07-25 17:55:29
數(shù)據(jù)庫
財經(jīng)(2016年15期)2016-06-03 07:38:02
數(shù)據(jù)庫
財經(jīng)(2016年3期)2016-03-07 07:44:46
數(shù)據(jù)庫
財經(jīng)(2016年6期)2016-02-24 07:41:51
奇妙學(xué)校
主站蜘蛛池模板: 日本黄色不卡视频| 婷婷综合亚洲| 试看120秒男女啪啪免费| 国产成人亚洲欧美激情| 露脸一二三区国语对白| 亚洲综合婷婷激情| 色婷婷电影网| 91网红精品在线观看| 欧美天天干| 亚洲欧洲国产成人综合不卡| 在线国产你懂的| 91视频精品| 亚洲欧美日韩动漫| 亚洲无码精品在线播放| 99热最新网址| 天天婬欲婬香婬色婬视频播放| 亚洲品质国产精品无码| 99偷拍视频精品一区二区| 国产成人综合日韩精品无码不卡| 九九九久久国产精品| 欧美日韩国产成人高清视频| 日韩成人午夜| 99久久国产综合精品2020| 波多野结衣AV无码久久一区| 九色综合伊人久久富二代| 国产欧美日韩另类精彩视频| 五月天在线网站| 国产免费久久精品44| 青青热久麻豆精品视频在线观看| 97国产精品视频自在拍| 日本一本在线视频| 久视频免费精品6| 台湾AV国片精品女同性| 激情视频综合网| 国产国拍精品视频免费看| 欧美精品1区2区| 人妻无码一区二区视频| 伊人成色综合网| 狠狠色狠狠色综合久久第一次| 亚卅精品无码久久毛片乌克兰| 自拍偷拍欧美日韩| aa级毛片毛片免费观看久| 亚洲欧美在线精品一区二区| 99在线视频免费| 免费看美女毛片| 福利国产微拍广场一区视频在线| 亚洲成人网在线观看| 国产成人你懂的在线观看| 国产精品粉嫩| 在线观看国产精品一区| 国产日本一线在线观看免费| 男人天堂亚洲天堂| 国产黄色片在线看| 毛片一级在线| 久久天天躁狠狠躁夜夜2020一| 香港一级毛片免费看| 精品国产污污免费网站| 国产精品手机在线播放| 欧美午夜在线观看| 国产成人高清精品免费软件| 亚洲欧洲日韩综合色天使| 欧美日韩资源| 理论片一区| 欧美国产视频| 久久国产精品无码hdav| 熟妇丰满人妻| 亚洲视频无码| 一级毛片免费高清视频| 天天综合网站| 热九九精品| 国产女人爽到高潮的免费视频 | 精品日韩亚洲欧美高清a| 久久伊伊香蕉综合精品| 亚洲精品动漫| 国产内射在线观看| 国产午夜一级毛片| 欧美亚洲一区二区三区在线| 一区二区欧美日韩高清免费| 欧美人人干| 欧美翘臀一区二区三区| 高清精品美女在线播放| 性欧美在线|