當前位置:战国兰斯8>智慧工廠門戶>應用案例>前后端分離的Web架構解決方案

欧兰斯:前后端分離的Web架構解決方案

發布時間:2019-11-19 14:59   類型:解決方案   人瀏覽
摘要 本文首先分析了Web應用開發架構之經典的MVC模式在服務端資源占用和用戶訪問網頁的體驗兩方面的不足,提出了前后端分離的架構設計,從前后端分離架構風格的交互協議和特點、前端進一步分離并接管控制路由、前后端開發前的接口約定等幾個方面進行了闡述,最后對該架構風格的應用場景做了總結。 Web之MVC架構 傳統Web應用開發架構經歷了從視圖和業務邏輯完全混在一起的單體應用發展到視圖和業務邏輯分離的MVC結構。最大的優點就是層與層之間實現了解耦,業務邏輯、跳轉控制、視圖展示各司其職。 1 MVC模式缺點 在MVC模式中控制器非常重要,是模型和視圖進行溝通的橋梁,簡單來說模型其實就是一個實體類對象,視圖就是諸如JSP、HTML等頁面模板,而請求首先到達控制器,控制器請求項目核心業務獲取數據封裝到模型對象,最后將模型傳遞到視圖中進行展現。 這個模式有兩個缺點: 1、用戶每次想要看到最終頁面必須要經過控制器、模型、視圖三層 2、視圖到達瀏覽器之前的所有渲染工作都在后端服務器進行,占用了服務器運算資源,同時頁面性能無法得到很好的優化。 為了提高用戶的流暢上網體驗,同時防止高并發對服務器造成資源占用,應將頁面渲染工作從后端服務器轉移到前端進行,后臺只負責提供數據,前端負責解析數據和頁面渲染,這種架構就是前后端分離架構。 2 MVC模式中引入Ajax 將視圖頁面中的動態數據全部交給ajax發送請求到服務器,服務器返回json格式的數據,視圖頁面進行數據解析和界面渲染,這樣就會讓view負責數據展現和渲染,減輕了服務端壓力和資源占用,提供更好的用戶體驗。改造后結構如下圖所示:       這其實就是前后端分離的初步構想,簡化后就是前后端分離模式。 前后端分離架構 假如把瀏覽器頁面作為前端,其他提供數據的都作為后端的話,可以簡化為如下所示前后端分離模式:   圖2 前后端分離架構示意圖 前后端之間通過RESTFUL風格的url發出ajax請求。REST (Representational State Transfer) 即表述性狀態傳遞[1],它的核心思想是將互聯網資源對應到一個url[2]上,對資源的相關操作分別用HTTP協議里的GET,POST,DELETE,PUT表示[3]。RESTFUL[4]既簡單又直觀,通過HTTP[5]的方法對資源進行操作,簡化了客戶端和服務器之間交流的表達。 RESTFUL風格的請求樣例如下所示:   跨域解決方案 前后端通過ajax訪問還有一個問題就是跨域,因為ajax的xhr對象是不允許跨域訪問的,要解決跨域問題可以采用以下解決方案: 1、JSONP 基本原理就是通過動態創建script標簽,然后利用src屬性進行跨域,但是要注意JSONP只支持GET請求,不支持POST請求。 2、CORS(跨域資源共享) 利用nginx或者php、java等后端語言設置允許跨域請求 header('Access-Control-Allow-Origin:*');//允許所有來源訪問 header('Access-Co

成為會員,繼續閱讀。
       

战国兰斯8 www.kaxqfl.com.cn 本文地址://www.kaxqfl.com.cn/apply/d_1o1aj18naak93_1.html

拷貝地址

版權聲明:版權歸中國自動化網所有,轉載請注明出處!

留言反饋
  • 評價:

  • 關于:

  • 聯系人:

  • 聯系電話:

  • 聯系郵箱:

  • 需求意向:

  • 驗證碼:

    看不清楚?

  • 在線咨詢
达人麻将外挂 农机机油商店赚钱吗 腾讯欢乐捕鱼海神选宝箱技巧 高频彩拉人赚钱 在家用手机怎样赚钱是真的吗 0107千炮捕鱼 梦幻西游互通版打图还是挖图赚钱 开个福彩店怎么赚钱 熊猫麻将外挂神器下载 赚钱受益终生 能够赚钱的游戏 经典免费单机麻将 手机捕鱼代理 利用购物网站赚钱 期权什么情况下才赚钱 甘肃麻将如何胡牌几对