• 
    

    
    

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

      面向資源的RESTful Web應(yīng)用研究

      2018-09-17 05:36:16楊力
      科教導(dǎo)刊·電子版 2018年21期
      關(guān)鍵詞:應(yīng)用設(shè)計

      楊力

      摘 要 在web技術(shù)的探索實踐基礎(chǔ)之上提出面向資源的RESTful Web應(yīng)用設(shè)計方案,從資源規(guī)劃、控制器設(shè)計以及模型建立等方面分析其實現(xiàn)原理,并且在Rails框架下提出RESTful Web應(yīng)用開發(fā)步驟。本文主要分析面向資源的RESTful Web應(yīng)用,希望能夠?qū)ο嚓P(guān)人員起到參考性價值。

      關(guān)鍵詞 面向資源 RESTful Web 應(yīng)用設(shè)計

      中圖分類號:TP311 文獻標識碼:A

      現(xiàn)階段,基于RESTful Web已經(jīng)廣泛應(yīng)用在大部分領(lǐng)域當中,某些大型企業(yè)能夠給予REST服務(wù)和web服務(wù),盡管各項服務(wù)使用了REST風(fēng)格,然而并沒有實現(xiàn)真正意義上的RESTful Web應(yīng)用。靜態(tài)網(wǎng)站整體呈現(xiàn)REST風(fēng)格,但是我國在網(wǎng)站基礎(chǔ)之上提供用戶動態(tài)服務(wù)的RESTful Web應(yīng)用程序比較鮮見。

      1使用Rails實現(xiàn)RESTful Web應(yīng)用的原理

      現(xiàn)階段,Rails已經(jīng)全面基于REST,但是該框架無法對資源進行直接定義,將web應(yīng)用功能劃分為若干個控制器,利用控制器暴露資源。因此一個控制器對應(yīng)一個資源,在Rails控制器當中具備行為功能,能夠通過標準動作操作資源的CRUD。設(shè)計控制器就能夠明確資源暴露和統(tǒng)一接口方法等。

      在Rails文件當中,使用map定義RESTful Web,主要是應(yīng)用資源路由。RESTful URI包括模型類和控制器,在URI當中不包含動作,利用HTTP當中的動詞和組合形式能夠操作某個資源,其中Routes主要是將用戶請求路由輸送到制定方法,利用控制器能夠向Rails下發(fā)指令,使其將接收到的請求路由分給適宜的類別,有效處理給定請求。如果Rails接收到HTTP請求,則會按照請求目標的首個路徑變量將請求分配給控制器處理。

      2基于Rails的RESTful Web應(yīng)用設(shè)計步驟

      由于Rails能夠支持REST,因此在設(shè)計應(yīng)用程序時需要從資源角度出發(fā),合理規(guī)劃資源。將能夠抽象化的所有東西都定義為RESTful Web中,這樣能夠使所有URI表示特定資源,由各個資源共同組成系統(tǒng)。應(yīng)用URI對系統(tǒng)結(jié)構(gòu)進行設(shè)計,這樣才能夠更好地設(shè)計RESTful Web應(yīng)用?;赗ails的RESTful Web應(yīng)用設(shè)計步驟如下:規(guī)劃數(shù)據(jù)集——建立模型——設(shè)計控制器(將數(shù)據(jù)集分配到各控制器當中,定義資源URI,之后按照系統(tǒng)功能建立資源)——路由(在route當中利用map配置REST路由,針對嵌套資源來說,Rails能夠提供路由定義)——設(shè)計視圖(Rails視圖主要是利用ERb模板進行定義,因此在視圖當中需要應(yīng)用route當中的helper方法,用戶能夠借助于按鈕和鏈接與系統(tǒng)之間進行交互炸,轉(zhuǎn)移資源鏈接狀態(tài))。

      3面向資源的RESTful Web答疑系統(tǒng)

      為了全面體現(xiàn)出RESTful Web應(yīng)用設(shè)計思想,此次研究主要是應(yīng)用網(wǎng)絡(luò)答疑系統(tǒng)在Rails框架下實現(xiàn)RESTful Web的應(yīng)用開發(fā)作為案例分析。答疑系統(tǒng)主要是利用網(wǎng)上答疑處理用戶問題,之后用戶可以維護和管理問題,能夠?qū)ψ陨硖岢龅膯栴}和解答進行顯示,如下所示:

      3.1數(shù)據(jù)集規(guī)劃

      網(wǎng)絡(luò)答疑系作為整個系統(tǒng)的簡化部分,能夠?qū)⑺袛?shù)據(jù)信息主要涉及用戶,問題和答案。其中“用戶”主要包括教師和學(xué)生,其中教師擁有姓名,密碼,簡介和電子郵件屬性,學(xué)生擁有用戶名稱,密碼和電子郵件屬性;“問題”主要是學(xué)生所提問的問題,主要是學(xué)生用戶名問題標題和解答屬性等;“答案”與“問題”配套,主要是由教師提供,包括教師姓名,問題和答案等。

      3.2建立模型

      在網(wǎng)絡(luò)答疑系統(tǒng)當中的實體,可以建立學(xué)生,教師,問題和答案等四個數(shù)據(jù)表,其對應(yīng)的模型文件和表間關(guān)系如下:

      class student

      3.3控制器設(shè)計

      面向資源的RESTful Web設(shè)計思想主要是將應(yīng)用功能細分為若干個控制器,之后由控制器暴露資源。所以,設(shè)計控制器就是設(shè)計資源,系統(tǒng)實現(xiàn)功能主要是定義和命名資源,因此需要采用名詞方式命名資源。Rails控制器可以使用Ruby類實現(xiàn),在此次研究當中共設(shè)計了八個控制器,分別包括以下方面:教師控制器:能夠?qū)處熧Y源實施CRUD操作,教師控制器的根URI為教師;學(xué)生控制器:能夠?qū)W(xué)生資源實施CRUD操作,學(xué)生控制器的根URI為學(xué)生;問題控制器:從屬于學(xué)生資源,問題控制器的根為學(xué)生ID和問題。由問題控制器當中的“show”能夠完成學(xué)生問題,其對應(yīng)的URI是學(xué)生ID和問題;由問題控制器當中的“new”能夠完成學(xué)生提問,其對應(yīng)的URI是學(xué)生ID和問題以及“new”。對于非CRUD控制操作的控制器來說,典型問題和最新問題,問題查詢等都是經(jīng)過資源化處理之后對應(yīng)的控制器,URI和HTTP動詞以及操作描述等。答案控制器從屬于問題資源,該控制器的根為問題ID和答案,教師解答問題能夠建立新的資源,并且由問題控制器最新問題和問題控制器的創(chuàng)造問題對應(yīng)答案表的創(chuàng)造操作。

      用戶登錄和退出控制器。用戶登錄狀態(tài)控制器的根為 “登錄狀態(tài)”,登錄和退出對應(yīng)的Rails方法主要是登錄狀態(tài)控制器的“新建”和“歷史記錄”。

      4結(jié)束語

      綜上所述,通過以上分析能夠看出,系統(tǒng)功能創(chuàng)建資源主要包括建立Rails控制器,路由定義和嵌套資源的定義和操作,并且不具備針對功能定義,每一項操作都是由REST URI和HTTP動詞決定。

      參考文獻

      [1] 李彬峰.基于RESTful Web服務(wù)的輕量級電子村務(wù)平臺的研究與應(yīng)用[D].廣州:華南農(nóng)業(yè)大學(xué),2016.

      猜你喜歡
      應(yīng)用設(shè)計
      基于HTML5技術(shù)的云存儲應(yīng)用設(shè)計探討
      科技傳播(2017年2期)2017-04-06 15:39:10
      論傳統(tǒng)水彩畫技法與應(yīng)用設(shè)計的融合
      楊柳青娃娃畫色彩視覺特征的現(xiàn)代化應(yīng)用設(shè)計
      實踐教學(xué)法在服裝衛(wèi)生學(xué)教學(xué)中的應(yīng)用分析
      超濾膜系統(tǒng)在垃圾滲濾液處理中的應(yīng)用與設(shè)計
      移動互聯(lián)平臺應(yīng)用設(shè)計及開發(fā)
      項目教學(xué)法在《基礎(chǔ)會計》教學(xué)中的應(yīng)用
      商情(2016年40期)2016-11-28 11:47:00
      分層教學(xué)模式在初中信息技術(shù)中的應(yīng)用設(shè)計
      考試周刊(2016年61期)2016-08-16 06:45:23
      民間美術(shù)在現(xiàn)代設(shè)計中的應(yīng)用
      淺析建構(gòu)主義理論在中學(xué)物理教學(xué)設(shè)計中的應(yīng)用
      东台市| 麟游县| 云和县| 桂东县| 宁安市| 巴塘县| 盐池县| 绍兴市| 甘洛县| 永城市| 湘阴县| 临沧市| 临湘市| 常州市| 天峻县| 望江县| 大庆市| 徐州市| 河南省| 珠海市| 即墨市| 顺平县| 广东省| 南宁市| 鸡东县| 福海县| 汉中市| 岢岚县| 武夷山市| 连平县| 延庆县| 刚察县| 丽江市| 麻江县| 南通市| 仁布县| 沈丘县| 汝州市| 绥德县| 巴彦县| 东莞市|