• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于RESTful架構(gòu)的科技信息共享接口系統(tǒng)的設(shè)計

      2018-12-22 14:33:13
      軟件 2018年7期
      關(guān)鍵詞:條數(shù)列表架構(gòu)

      黃 沛

      ?

      基于RESTful架構(gòu)的科技信息共享接口系統(tǒng)的設(shè)計

      黃 沛

      (四川省科學(xué)技術(shù)信息研究所,四川 成都 610016)

      在一個包含了多個子系統(tǒng)的大型科技綜合服務(wù)平臺系統(tǒng)里,需要各個子系統(tǒng)間相互交換共享數(shù)據(jù),為此采用RESTful架構(gòu)設(shè)計了科技信息共享接口系統(tǒng),為各個子系統(tǒng)提供了相互存取各自可公開的私有數(shù)據(jù)的能力,同時避免了傳統(tǒng)方法開發(fā)量大兼容性差的弊端。

      RESTful;數(shù)據(jù)共享;Web Service;HTTP協(xié)議

      0 引言

      一個大型的科技綜合服務(wù)系統(tǒng)往往是由多個子系統(tǒng)構(gòu)成的:例如信息采集系統(tǒng)、交流評論系統(tǒng)、發(fā)布展示系統(tǒng)等,這些系統(tǒng)內(nèi)部的數(shù)據(jù)資源經(jīng)常需要相互之間進行交換共享,然而通過傳統(tǒng)的方法存在著開發(fā)工作量過大、平臺兼容性差等缺陷,通過基于RESTful架構(gòu)設(shè)計一套簡潔高效安全的科技信息共享接口系統(tǒng),可以比較有效的解決上述問題。

      1 技術(shù)原理

      RESTful[1]架構(gòu)是一種互聯(lián)網(wǎng)軟件架構(gòu),它結(jié)構(gòu)清晰、符合標準、易于理解、擴展方便,正得到越來越多網(wǎng)站系統(tǒng)的采用。RESTful架構(gòu)是Roy Thomas Fielding博士首先提出的一種互聯(lián)網(wǎng)軟件架構(gòu)原則,REST是Representational State Transfer(表現(xiàn)層狀態(tài)轉(zhuǎn)換)的縮寫,Roy Thomas Fielding博士是HTTP協(xié)議(1.0版和1.1版)的主要設(shè)計者。

      此架構(gòu)的基本原理[1]描述如下:

      (1)將互聯(lián)網(wǎng)上任何一個資源(包括文本、圖片、視頻、歌曲、服務(wù)等),用一個URI(統(tǒng)一資源定位符)指向它,由于資源表示一種實體,所以URI在命名時應(yīng)該使用名詞而不能是動詞,例如;http://api.somesite.net/users。

      (2)通過HTTP協(xié)議中四個操作方法:GET、POST、PUT、DELETE完成對上述資源的存取操作,其中GET用來獲取資源(一項或多項),POST用來新建資源(也可以用于更新資源),PUT用來更新資源,DELETE用來刪除資源。

      (3)資源的表現(xiàn)形式需要客戶端和服務(wù)端通過HTTP協(xié)議進行協(xié)商,即客戶端需要通過Accept頭請求其可以接受的特定的資源格式,服務(wù)端則通過Content-Type頭告訴客戶端其發(fā)出的資源格式。對于文本資源,可以采用HTML、XML、JSON 等格式,對于圖片資源,可以采用用PNG或JPG格式。

      2 優(yōu)勢

      采用RESTful架構(gòu)設(shè)計的互聯(lián)網(wǎng)軟件,相對于傳統(tǒng)的使用基于SOAP(Simple Object Access Protocol,即簡單對象訪問協(xié)議)協(xié)議的Web Service[7-9](即Web服務(wù))模式開發(fā)的應(yīng)用系統(tǒng),具有以下 優(yōu)點[2-6]:

      (1)可以高效利用緩存來提高響應(yīng)速度。SOAP Web Service系統(tǒng)隨著不斷的增加協(xié)議內(nèi)容,體系變得龐大臃腫,流程環(huán)節(jié)繁多,使得服務(wù)器提供數(shù)據(jù)存取的緩存機制變得非常復(fù)雜,甚至不可實現(xiàn);而RESTful系統(tǒng)則由于實現(xiàn)簡潔、環(huán)節(jié)單一,服務(wù)器可以非常方便的對其提供各種緩存加速機制。

      (2)軟件依賴性小。SOAP Web Service系統(tǒng)由于體系復(fù)雜,為方便開發(fā),不同的開發(fā)環(huán)境需要提供各自的開發(fā)框架;而RESTful系統(tǒng)則只要開發(fā)環(huán)境能夠支持HTTP協(xié)議[10]開發(fā)即可。

      (3)不需要額外的資源發(fā)現(xiàn)機制。SOAP Web Service系統(tǒng)在接口定義上有嚴格的要求,各種數(shù)據(jù)規(guī)格都有精確的規(guī)定,因而也要求必須定義一套復(fù)雜的資源發(fā)現(xiàn)機制,而RESTful系統(tǒng)則不用這樣。

      (4)兼容性好。采用RESTful架構(gòu)開發(fā)的系統(tǒng),可以在不同的開發(fā)環(huán)境中直接使用,不需額外配置,而SOAP Web Service系統(tǒng)則必須根據(jù)不同的開發(fā)環(huán)境進行不同程度的調(diào)整。

      3 系統(tǒng)實現(xiàn)

      3.1 全庫檢索

      1、功能:獲取系統(tǒng)所有可公開的信息列表。

      2、API接口定義:

      GET/alllist?catalog=&keyword=&thispage=&pagesize=<4>

      catalog即搜索的欄目編號;keyword即搜索關(guān)鍵詞;thispage 和 pagesize 為分頁使用的參數(shù),分別表示當前要取第幾頁的數(shù)據(jù)和每頁數(shù)據(jù)條數(shù)。

      3、返回值:返回結(jié)果為如下Json格式:

      {

      “issuccess” : “true/false” , //數(shù)據(jù)獲取成功或失敗

      “totalnum” : “100” , //總條數(shù)

      “wordspace”: “搜索的關(guān)鍵詞”

      //返回搜索關(guān)鍵詞, 套紅時使用

      “result” : [ //結(jié)果列表

      {

      “name” : “標題”, //信息標題

      “url” : “http://xxx.com/Detail.aspx?

      pid=123456”,

      “infoabstract”: “摘要”,

      //信息摘要內(nèi)容(200字以內(nèi))

      “source”: “信息來源名稱”,

      //信息來源名稱

      “sourcewebsite” :“http://xxx.com”,

      //信息來源網(wǎng)址

      “createtime” : “2014-08-04”

      //發(fā)布時間

      },

      ],

      “hint” : “成功/失敗的說明?!?/數(shù)據(jù)獲

      取成功說明或失敗的原因

      }

      3.2 最熱門數(shù)據(jù)

      1、功能:獲取最熱門的數(shù)據(jù)列表,默認返回最前面的8條數(shù)據(jù)。

      2、API接口定義:

      GET /toplist?catalog=

      catalog即搜索的欄目編號。

      3、返回值:返回結(jié)果為如下Json格式:

      {

      “issuccess” : “true/false” , //數(shù)據(jù)獲取成功或失敗

      “result” : [ //結(jié)果列表

      {

      “name” : “標題” , //信息標題

      “url” : “http://xxx.com/Detail.aspx?

      pid=123456”,

      “createtime” : “2014-08-04”

      //發(fā)布時間

      },

      ] ,

      “hint” : “成功/失敗的說明。”//數(shù)據(jù)獲取成功說明或失敗的原因

      }

      3.3 科技文獻數(shù)據(jù)

      1、功能:獲取科技文獻數(shù)據(jù)列表。

      2、API接口定義:

      GET/techdoc?tp=&keyword=&thisPage= &pageSize=

      tp即文獻類型;keyword即查詢關(guān)鍵字;thisPage即當前頁,起始頁碼為1;pageSize即每頁顯示條數(shù),最大30條。

      3.4 科技成果數(shù)據(jù)

      1、功能:獲取科技成果數(shù)據(jù)列表。

      2、API接口定義:

      GET/techresult?tp=&thisPage=&pageSize=

      tp即數(shù)據(jù)分類(科技成果:0,科技項目:1,科技需求:2,科技專家:3);thisPage即當前頁,起始頁碼為1;pageSize即每頁顯示條數(shù),最大30條。

      3.5 科技報告數(shù)據(jù)

      1、功能:獲取科技報告數(shù)據(jù)列表。

      2、API接口定義:

      GET/techreport? keyword=&thisPage=

      &pageSize=

      keyword即查詢的關(guān)鍵字,格式為“字段:關(guān)鍵字”,多關(guān)鍵字檢索用逗號分開,例如“字段1:關(guān)鍵字1,字段2:關(guān)鍵字2”,采用UTF-8編碼;thisPage即當前頁,起始頁碼為1;pageSize即每頁顯示條數(shù),最大30條。

      4 結(jié)語

      采用RESTful架構(gòu)設(shè)計的科技信息共享接口系統(tǒng),有效解決了大型科技綜合服務(wù)系統(tǒng)中各個分/子系統(tǒng)間數(shù)據(jù)共享交換的難題,簡化了程序設(shè)計,改善了各系統(tǒng)間的兼容性,提高了平臺的總體性能。目前,該共享接口系統(tǒng)已在四川省科技創(chuàng)新綜合服務(wù)平臺中得到應(yīng)用,經(jīng)過實際運行證明其設(shè)計思想是正確和可行的,為今后類似系統(tǒng)的設(shè)計開發(fā)提供了借鑒和參考。

      [1] Leonard Richardson, Sam Ruby, Mike Amundsen. RESTful Web APIs[M]. O¢Reilly Media, 2013.

      [2] 李瑩, 柳生鵬, 趙朗, 潘綱. 自適應(yīng)RESTful Web API進化模型的研究[J]. 計算機集成制造系統(tǒng), 2017, (5): 1020-1030.

      [3] 唐明偉, 蘇新寧, 蔣勛. RESTful Web服務(wù)和知識庫協(xié)同驅(qū)動的突發(fā)事件網(wǎng)絡(luò)輿情實時追蹤[J]. 山東大學(xué)學(xué)報: 理學(xué)版, 2017, (6): 49-55.

      [4] 王衛(wèi)列. Restful+OData: 企業(yè)信息系統(tǒng)集成的簡明之道[J]. 計算機應(yīng)用與軟件, 2017, (12): 147-153

      [5] 曹步清, 文一憑, 王少偉. 基于Restful的Mashup應(yīng)用服務(wù)系統(tǒng)[J]. 計算機應(yīng)用與軟件, 2016, (2): 17-20, 50.

      [6] 高攀攀, 王健, 黃穎, 何克清. 互聯(lián)網(wǎng)上基于SOAP和REST的Web服務(wù)的對比分析[J]. 小型微型計算機系統(tǒng), 2015, (11): 2417-2421.

      [7] Wang S, Sun Q, Zou H, Yang F. Particle Swarm Optimization with Skyline Operator for Fast Cloud-based Web Service Composition[J]. Mobile Networks and Applications, 2013, 18(1): 116-121.

      [8] Wang S, Zheng Z, Wu Z, Lyu M, Yang F. Reputation Measurement and Malicious Feedback Rating Prevention in Web Service Recommendation Systems[J]. IEEE Transactions on Services Computing, 2015, 8(5): 755-767.

      [9] 陳玉亮, 薛燕平. 基于WebService的數(shù)字檔案資源集成研究與實現(xiàn)[J]. 軟件, 2015, 36(9): 39-41.

      [10] 阮曉龍. HTTP協(xié)議狀態(tài)檢測與性能分析軟件的設(shè)計與實現(xiàn)[J]. 軟件, 2015, 36(7): 136-141.

      Design of Sharing Interface System For Technology Information Base on Restful Architecture

      HUANG Pei

      (Institute of Scientific and Technical Information of Sichuan, Chengdu 610016, Sichuan, China)

      In a large-scale technology integrated service platform system that includes multiple subsystems, mutual exchange of shared data among the various subsystems is required. A RESTful architecture is adopted to design a sharing interface system for technology information to provide mutual access for each subsystem. It provides each subsystem with the ability to access each other¢s disclosed private data, and avoids the disadvantages of the large development amount and poor compatibility of the traditional methods.

      RESTful, Data sharing, Web Service, Http protocol

      TP393.09

      A

      10.3969/j.issn.1003-6970.2018.07.036

      黃沛(1975?),男,研究方向:計算機應(yīng)用。

      本文著錄格式:黃沛. 基于RESTful架構(gòu)的科技信息共享接口系統(tǒng)的設(shè)計[J]. 軟件,2018,39(7):170-172

      猜你喜歡
      條數(shù)列表架構(gòu)
      巧用列表來推理
      基于FPGA的RNN硬件加速架構(gòu)
      學(xué)習(xí)運用列表法
      功能架構(gòu)在電子電氣架構(gòu)開發(fā)中的應(yīng)用和實踐
      汽車工程(2021年12期)2021-03-08 02:34:30
      擴列吧
      巧算金魚條數(shù)
      LSN DCI EVPN VxLAN組網(wǎng)架構(gòu)研究及實現(xiàn)
      人民網(wǎng)、新華網(wǎng)、中國非公企業(yè)黨建網(wǎng)兩新黨建報道條數(shù)排行
      對多邊形對角線條數(shù)的探究
      每只小貓給了貓媽媽幾條魚
      抚远县| 家居| 盐池县| 阜新| 江阴市| 红原县| 涞水县| 连云港市| 左贡县| 临夏市| 剑河县| 西畴县| 鄂尔多斯市| 日照市| 微山县| 景谷| 富锦市| 昭平县| 双鸭山市| 马尔康县| 霸州市| 定结县| 镇巴县| 汝州市| 大理市| 会泽县| 盘锦市| 澄江县| 闵行区| 新丰县| 七台河市| 新野县| 舟曲县| 唐山市| 碌曲县| 宜川县| 合山市| 亚东县| 贵德县| 洛浦县| 鄂州市|