亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于JS的嵌入式信息服務(wù)應(yīng)用研究

        2011-08-21 01:24:06王建濤董珍時
        圖書館研究 2011年5期
        關(guān)鍵詞:服務(wù)器端文檔嵌入式

        王建濤,董珍時

        (1.浙江大學(xué)寧波理工學(xué)院圖書館,浙江 寧波 315100;2.浙江紡織服裝職業(yè)技術(shù)學(xué)院圖書館,浙江 寧波 315211)

        1 引言

        嵌入式信息服務(wù)是泛在信息服務(wù)的重要形式,根據(jù)嵌入的范圍可分為嵌入桌面和嵌入Web兩種模式。王建濤和胡明玲在《工具條在圖書館信息服務(wù)中的應(yīng)用》[1]中以及樂小虬等在《嵌入式桌面信息服務(wù)及其系統(tǒng)實(shí)現(xiàn)》[2]中分別對嵌入桌面模式的嵌入式信息服務(wù)的系統(tǒng)設(shè)計與實(shí)現(xiàn)方法進(jìn)行了研究。比嵌入桌面模式應(yīng)用范圍更廣的是嵌入Web的嵌入式信息服務(wù),其中基于JS(JavaScript)的嵌入式信息服務(wù)可根據(jù)需要隨時、多形式、低成本、高效率、無縫融合地嵌入萬維網(wǎng)中的用戶信息環(huán)境提供服務(wù)。JS是一種廣泛用于客戶端Web開發(fā)的腳本語言,常用來為HTML網(wǎng)頁添加動態(tài)功能。這種服務(wù)在百度中稱為免費(fèi)代碼,在一些門戶網(wǎng)站中稱為信息定制(如天氣預(yù)報)、Mashup服務(wù)等。作者分別在學(xué)術(shù)信息資源開放目錄網(wǎng)站(以下簡稱ODP)[3]、服務(wù)外包產(chǎn)業(yè)信息門戶網(wǎng)站[4]實(shí)現(xiàn)了基于JS的嵌入式信息服務(wù)。因此,探討基于JS的嵌入式信息服務(wù)的特點(diǎn)、信息服務(wù)架構(gòu)和關(guān)鍵技術(shù)實(shí)現(xiàn),對圖書館界廣泛開展嵌入式信息服務(wù)有著重要的借鑒和示范作用。

        2 基于JS的嵌入式信息服務(wù)的特點(diǎn)

        對用戶來說,基于JS的嵌入式信息服務(wù)技術(shù)門檻低、無縫融合、無需維護(hù)、零成本、數(shù)據(jù)同步。對圖書館來說,拓展了其信息服務(wù)的范圍,為信息服務(wù)的開展提供了嵌入用戶環(huán)境的信息服務(wù)平臺。歸納起來,基于JS的嵌入式信息服務(wù)主要有如下幾方面的特點(diǎn):

        (1)嵌入性。基于JS的嵌入式信息服務(wù)能實(shí)現(xiàn)無縫嵌入,不僅實(shí)現(xiàn)網(wǎng)站內(nèi)翻頁,還通過樣式設(shè)置將信息資源與信息服務(wù)融入用戶信息環(huán)境。

        (2)易用性。網(wǎng)站用戶只需“選擇﹢復(fù)制﹢粘貼”就可應(yīng)用基于JS的嵌入式信息服務(wù),真正實(shí)現(xiàn)了零技術(shù)門檻的應(yīng)用。

        (3)廣泛適應(yīng)性。客戶端基于JS代碼,能廣泛應(yīng)用到各類網(wǎng)站環(huán)境中。

        (4)信息粒度適中?;驹獢?shù)據(jù)配合用戶選擇的信息展示條數(shù),完全滿足用戶的需求。

        (5)靈活性。信息的展示形式、部署位置均具有相當(dāng)?shù)撵`活性,信息內(nèi)容、信息模式等都可通過簡單的定制頁面定制到合適的JS代碼,并通過多種參數(shù)設(shè)置為用戶提供了深層次應(yīng)用的可能。

        (6)泛在性。圖書館的信息服務(wù)借助JS的廣泛嵌入,不僅使信息資源得到廣泛的開放利用,還使圖書館的服務(wù)平臺無處不在成為可能。

        3 基于JS的嵌入式信息服務(wù)架構(gòu)

        筆者以O(shè)DP網(wǎng)站基于JS的嵌入式信息服務(wù)為例,闡述基于JS的嵌入式信息服務(wù)架構(gòu)。基于易用性、靈活性和高效率的要求,ODP基于JS的嵌入式信息服務(wù)架構(gòu)如圖1所示,其業(yè)務(wù)流程為:在客戶端裝載由ODP網(wǎng)站提供的JS代碼嵌入HTML;JS通過SRC屬性向服務(wù)器端發(fā)送讀取JS文件請求;服務(wù)器端的PHP程序根據(jù)查詢策略讀取數(shù)據(jù)并應(yīng)用緩存組件創(chuàng)建對應(yīng)的JS文檔,同時在緩存時完成利用統(tǒng)計;再由Web服務(wù)器返回對應(yīng)的JS文檔,客戶端執(zhí)行JS代碼并裝載數(shù)據(jù),再由JS修改HTML,最后在客戶端頁面指定的地方展示并提供利用。

        圖1 基于JS的嵌入式信息服務(wù)架構(gòu)

        4 關(guān)鍵技術(shù)實(shí)現(xiàn)

        4.1 跨域訪問

        要將圖書館信息服務(wù)嵌入用戶信息環(huán)境,需要在用戶環(huán)境中讀取(或分享)服務(wù)提供方的數(shù)據(jù)或服務(wù)內(nèi)容?;赬ML數(shù)據(jù)的信息資源共享模式和基于Open API的數(shù)據(jù)封裝模式均是服務(wù)器—服務(wù)器端在數(shù)據(jù)層面的直接交互,不存在跨域訪問的問題,但這種類型的應(yīng)用技術(shù)門檻高,不利于廣泛的應(yīng)用。基于JS的信息資源的利用則無需在JS嵌入的網(wǎng)站服務(wù)器進(jìn)行數(shù)據(jù)處理,而是直接嵌入到前臺HTML通過瀏覽器獲得信息資源,是基于客戶端—服務(wù)器的信息交互。但出于安全考慮,瀏覽器不允許客戶端與服務(wù)器之間的跨域訪問,一些服務(wù)器也對跨域訪問數(shù)據(jù)進(jìn)行了限制。因此,解決跨域訪問是基于JS的信息服務(wù)的關(guān)鍵。目前,解決跨域訪問的方式有以下幾種:

        (1)JSON(JavaScript Object Notation)。JSON是一種輕量級的數(shù)據(jù)交換格式,以文字為基礎(chǔ),易于閱讀和編寫,同時也易于機(jī)器解析和生成。JSON與XML最大的不同在于XML是一個完整的標(biāo)記語言,而JSON 不是,它重點(diǎn)在于數(shù)據(jù)的交換[5]。

        (2)Iframe。Iframe是HTML中的元素,即文檔中的文檔,或者浮動的框架(FRAME)。相當(dāng)于在網(wǎng)頁中開一個窗口,直接通過SRC屬性引用外部URI頁面。其特點(diǎn)是實(shí)現(xiàn)簡單,可通過URL形式傳遞參數(shù),對動態(tài)程序進(jìn)行數(shù)據(jù)調(diào)用。不足之處是形式上的嵌入,可控性相對較差,不是基于內(nèi)容的完整嵌入。許多網(wǎng)站不愿應(yīng)用該模式,多數(shù)服務(wù)平臺(如CSDN的博客)也不支持該模式。

        (3)JS(JavaScript)文檔。瀏覽器支持作為客戶端語言的JS跨域訪問JS文檔(代碼),所以可以利用這一特點(diǎn)在服務(wù)器端將數(shù)據(jù)裝入JS文檔,再直接通過JS的SRC屬性獲取外部URL的JS文檔,最后在客戶端對JS文檔中的數(shù)據(jù)進(jìn)行分析和展示。Google AJAX Search API是這種應(yīng)用的典型代表,它通過SRC將編寫好的JS控件引入客戶端,然后在客戶端通過AJAX調(diào)用經(jīng)過服務(wù)器端裝載的JS文檔數(shù)據(jù),從而實(shí)現(xiàn)搜索與展示搜索結(jié)果。

        基于以上分析,JS是解決數(shù)據(jù)跨越訪問的較好選擇。

        4.2 自動編碼

        在網(wǎng)絡(luò)環(huán)境中,用戶網(wǎng)站是多種編碼模式中的一種,如UTF-8、GB2312、GBK等。因而,需要對圖書館嵌入用戶環(huán)境中的信息資源根據(jù)客戶端網(wǎng)站自動實(shí)現(xiàn)對應(yīng)的編碼??捎肑S的“document.charset”語句獲取客戶端編碼模式,并通過URL傳遞到服務(wù)器端,服務(wù)器端再對查詢的數(shù)據(jù)生成對應(yīng)的JS編碼文件。PHP中有專門的編碼轉(zhuǎn)換函數(shù)iconv,能較好地完成相關(guān)編碼的轉(zhuǎn)換。

        4.3 展示樣式

        雖然ODP提供了傻瓜式的JS代碼定制頁面[6],從這里定制的代碼基本能滿足大部分網(wǎng)站的需要,鏈接、字體大小默認(rèn)與網(wǎng)頁中的環(huán)境一致,但也提供了相關(guān)參數(shù)供用戶配置,以便高級用戶更加靈活利用,如標(biāo)題字符個數(shù)、每頁展示信息條數(shù)等均可由用戶自行設(shè)定。

        此外,由于數(shù)據(jù)已經(jīng)裝入JS文檔,且因JS文檔的開放性,對于熟悉JS編程的客戶來說,可自己根據(jù)JS文檔對數(shù)據(jù)進(jìn)行操作,一方面進(jìn)行展示效果的自由定制,另一方面通過裝載數(shù)據(jù)的操作實(shí)現(xiàn)與自己客戶端中的內(nèi)容進(jìn)行混搭(Mashup)應(yīng)用。

        4.4 動態(tài)緩存

        當(dāng)應(yīng)用JS的嵌入式信息服務(wù)的用戶較多時,為了減輕服務(wù)器的負(fù)擔(dān),進(jìn)行動態(tài)緩存尤為必要。因此,根據(jù)業(yè)務(wù)流程分析,由PHP程序生成對應(yīng)的JS文檔并以文件的形式存儲在服務(wù)器Web目錄中,由PHP定時動態(tài)更新文檔。其技術(shù)實(shí)現(xiàn)流程如下:當(dāng)客戶端通過URL調(diào)用PHP程序頁面時,首先判斷是否超過更新緩存JS文檔頁面的間隔時間,若超過更新間隔時間,則重新讀取數(shù)據(jù)庫并用新數(shù)據(jù)更新緩存JS文檔,供下次訪問時使用,同時將緩存的JS文檔發(fā)送到瀏覽器;若沒超過更新時間間隔,直接將緩存的JS文檔發(fā)送到瀏覽器。緩存間隔時間可根據(jù)數(shù)據(jù)變動的頻率、用戶量、服務(wù)器端服務(wù)能力和用戶對數(shù)據(jù)同步的要求來設(shè)定。

        4.5 利用統(tǒng)計

        圖書館提供的嵌入式信息服務(wù)到底有沒有用戶利用,誰在用,用的情況如何,這不僅是信息服務(wù)效果評價的重要依據(jù),而且對信息資源建設(shè)和信息服務(wù)策略的調(diào)整等均有重要意義。ODP網(wǎng)站對信息資源利用情況進(jìn)行統(tǒng)計,其JS的統(tǒng)計策略是與動態(tài)緩存一起完成的,即在動態(tài)緩存組件開始緩存數(shù)據(jù)時,完成對客戶端用戶情況的采集,包括用戶的域名(IP)、統(tǒng)計時間等信息。這種統(tǒng)計策略避免了頻繁統(tǒng)計造成網(wǎng)站服務(wù)效能降低,影響用戶體驗(yàn)。

        4.6 客戶端嵌入代碼

        客戶端嵌入的代碼首先是用來獲取用戶端的環(huán)境信息,包括客戶端的編碼方式、顯示數(shù)據(jù)區(qū)域等信息(見圖2中第一個腳本區(qū)域),然后再裝置從服務(wù)器端得到的信息內(nèi)容(見圖2第二個腳本區(qū)域),并以合適的方式在客戶端展現(xiàn)(見圖2中第三個腳本區(qū)域)。

        圖2 客戶端JS腳本代碼

        5 結(jié)束語

        本文研究了基于JS的嵌入式信息服務(wù)的一種應(yīng)用,該應(yīng)用實(shí)現(xiàn)了網(wǎng)絡(luò)導(dǎo)航服務(wù)。這種嵌入式服務(wù)如同在用戶環(huán)境中構(gòu)建了圖書館信息服務(wù)的一個拓展平臺,通過該平臺既可以實(shí)現(xiàn)如本文研究的網(wǎng)絡(luò)導(dǎo)航信息服務(wù),也可以為用戶提供通知通告、新聞動態(tài)、專題信息、參考資源、學(xué)習(xí)資料等信息。基于JS的嵌入技術(shù)能將圖書館豐富的信息資源完全融入用戶信息環(huán)境,體現(xiàn)圖書館的泛在服務(wù)。

        [1]王建濤,胡明玲.工具條在圖書館信息服務(wù)中的應(yīng)用[J].圖書情報工作,2007(2):121-124.

        [2]樂小虬,等.嵌入式桌面信息服務(wù)及其系統(tǒng)實(shí)現(xiàn)[J].現(xiàn)代圖書情報技術(shù),2008(3):7-11.

        [3]學(xué)術(shù)信息資源開放目錄[EB/OL].[2011-1-10].http://odp.nit.net.cn.

        [4]服務(wù)外包產(chǎn)業(yè)信息門戶[EB/OL].[2011-1-10].http://soip.nit.net.cn.

        [5]JSON[EB/OL].[2011-1-10].http://zh.wikipedia.org/zh-cn/JSON.

        [6]數(shù)據(jù)開放利用之:Mashup服務(wù)[EB/OL].[2011-1-10].http://odp.nit.net.cn/opendata/foryou.php.

        猜你喜歡
        服務(wù)器端文檔嵌入式
        有人一聲不吭向你扔了個文檔
        搭建基于Qt的嵌入式開發(fā)平臺
        淺析異步通信層的架構(gòu)在ASP.NET 程序中的應(yīng)用
        成功(2018年10期)2018-03-26 02:56:14
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        基于RI碼計算的Word復(fù)制文檔鑒別
        Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat
        在Windows中安裝OpenVPN
        Altera加入嵌入式視覺聯(lián)盟
        倍福 CX8091嵌入式控制器
        自動化博覽(2014年4期)2014-02-28 22:31:15
        網(wǎng)頁防篡改中分布式文件同步復(fù)制系統(tǒng)
        中文人妻熟女乱又乱精品| 亚洲精品视频免费在线| 久久熟女少妇一区二区三区| 国精产品一区一区三区有限在线| 亚洲色婷婷一区二区三区| 六月丁香久久| 日本在线中文字幕一区| 国产av综合网站不卡| 天天躁日日躁狠狠久久| 亚洲人在线观看| 亚洲视频在线观看青青草| 日本一区二区三区人妻| 亚洲日韩国产一区二区三区在线| 日韩在线免费| 国产高清一区二区三区视频| 女色av少妇一区二区三区| 另类老妇奶性生bbwbbw| 日韩AV有码无码一区二区三区 | 午夜无码片在线观看影视| 亚洲精品乱码久久久久久麻豆不卡 | 中文字幕麻豆一区二区| 久久女人精品天堂av影院麻| 东京热人妻无码一区二区av| 99视频全部免费精品全部四虎| 亚洲成生人免费av毛片| 欧美白人战黑吊| 理论片午午伦夜理片影院| 久久99精品波多结衣一区| 成人av资源在线播放| 国产精品美女久久久久av超清| 尤物99国产成人精品视频| 青青草视频国产在线观看| 一个少妇的淫片免费看| 中文字幕精品一二三四五六七八 | 区一区二区三区四视频在线观看 | 人妻中文无码久热丝袜| 中文字幕精品久久天堂一区| 成年人视频在线观看麻豆| 国产亚洲精品久久久闺蜜| 国产99r视频精品免费观看| 国产亚洲激情av一区二区|