論Node在構建超媒體API中的作用
版權宣告:本文為博主chszs的原創文章,未經博主允許不得轉載。 https://blog.csdn.net/chszs/article/details/38130483
論Node在構建超媒體API中的作用
作者:chszs,轉載需註明。部落格主頁:http://blog.csdn.net/chszs
超媒體即Hypermedia,是一種採用非線性網狀結構對塊狀多媒體資訊(包括文字、影像、視訊等)進行組織和管理的技術。超媒體的概念類似於早期的超文字,超文字的本質是在文字內容加上鍊接,這樣就構成了超文字。超媒體也類似。
無論是超媒體還是超文字,使用的傳輸協議都是HTTP,這意味著超媒體可以被所有的瀏覽器所接受。而描述超媒體的型別我們使用MIME。MIME即Multipurpose Internet Mail Extensions,多用途網際網路郵件擴充套件型別,MIME是一個網際網路標準,最早是應用於電子郵件系統的,後來其定義逐步應用到網際網路領域。用MIME指定媒體的型別,那麼客戶端瀏覽器就能清楚地知道,該如何處理這種型別的媒體。
Node.js是基於谷歌V8 JavaScript引擎構建的一種庫,主要用於方便、快捷的搭建易伸縮的網路應用。Node.js是事件驅動的,它充分利用JavaScript的閉包特性和事件處理機制,採用了非阻塞I/O模型,非常適合資料密集型的實時應用。Node.js實現了與Apache HTTP Server相似的功能,使之具備了構建基於JavaScript的高併發Web應用的能力。Node.js使得前後端開發可以使用同一種程式語言——JavaScript。
REST Web服務可以說是為HTTP協議量身定做的,在HTTP協議中使用URI來標識唯一的網路資源,用GET、POST、PUT、DELETE等動詞來操作資源,REST Web服務顯然比SOAP Web服務更加簡潔高效,因為它不需要額外的封裝協議和遠端過程呼叫。
至於資源的表現形式,可以是HTML5的,也可以是XML資料格式、JSON資料格式,又或者是二進位制的Protobuf格式。使用哪一種資料格式,取決於專案的需求。
Node.js提供了HTTP操縱能力,在客戶端或伺服器端都可以使用。Node.js最大的優勢是它有龐大的第三方庫,在RESTful Web Services方面,同樣有多個庫可以簡化我們的開發工作。比如:
1)node-restify
restify是一個精簡的、與Express庫相似的,用於構建RESTful API的Node.js庫。
安裝:
$ npm install restify
2)node-restful
node-restful是Express庫的封裝,很適合建立RESTful API。
安裝:
npm install node-restful
還有很多第三方庫就不一一列舉了。除此以外,我們還可以直接使用Node.js的核心庫構建RESTful API,或者是使用Express庫構建RESTful API。方法有很多種,都能達到目的。
超媒體的書很少,因此專門論述如何構建超媒體API的書就更少了,超媒體也是網路資源,同樣的可以用URI來定義,因此Node.js來實現超媒體的RESTful API是很容易的。
不得不說,《使用HTML5和Node構建超媒體API》這本書翻譯的太生硬了,閱讀時感覺不暢快。但是,這本書本身還是很有價值的,因為實現超媒體的RESTful API這種需求很常見,可以說是Web開發者的必備技能之一。反覆閱讀,揣摩其內涵,是我對此書讀者的一點小小建議。
相關文章
- 【乾貨】論玩家在遊戲社交中的個體構建遊戲
- 在 .NET Core 中構建 REST APIRESTAPI
- GraphQL初體驗,Node.js構建GraphQL API指南Node.jsAPI
- 在 Laravel 應用中構建 GraphQL APILaravelAPI
- 在Scala中構建Web API的4大框架WebAPI框架
- 在Flask中構建API介面的相關概念FlaskAPI
- node常用內建apiAPI
- 公平理論在專案管理中的作用(轉)專案管理
- 數字媒體在媒體矩陣中的地位——資訊圖矩陣
- 在VB中用API實現多媒體 (轉)API
- 建構函式的作用函式
- 企業部落格在品牌建設中的作用
- 人工智慧在現代軟體架構設計中的作用人工智慧架構
- 如何構建通用 api 中間層API
- [譯] 使用 Node 和 OAuth 2.0 構建一個簡單的 REST APIOAuthRESTAPI
- 餓了麼在API的實踐——構建API Everything框架API框架
- Wireshark在多媒體開發中的使用
- 淘寶詳情API介面在各種應用中的作用性API
- 作用域安全的建構函式函式
- 拷貝建構函式的作用函式
- Node.js 中 Stream API 的使用Node.jsAPI
- 構建API的7個技巧API
- 構建高效的 API 規範API
- 構建 API 應用API
- 當我們在談論建構函式注入的時候我們在談論什麼函式
- 在雲中構建數字核心
- 為媒體資產構建一個雲原生的檔案系統
- MySQL的BlackHole引擎在主從架構中的作用MySql架構
- javascript中初始化建構函式時new所起的作用JavaScript函式
- 程式碼之道:媒體評論
- 資料服務在新媒體業務體系中的實踐
- 論通訊子網在計算機網路中的地位和作用計算機網路
- Gradle 與 AGP 構建 API: 配置您的構建檔案GradleAPI
- 各種工具在軟體測試中的作用,值得收藏!
- node開發web程式---04構建node web程式Web
- Node中fs模組 API詳解API
- Node中Buffer 常用API解讀API
- Spring在ssh中的作用Spring