【C#】Asp.net 6 常用的WebApi 規范
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
摘要Web API 是一種在 Web 應用程序之間交換數據的機制,它使得開發者可以輕松地在應用程序之間共享數據和服務。而 Web API 規范則是指定 Web API 的開發方式和數據交換方式的標準化規范。常用的 Web API 規范包括面向過程的 RPC、面向 RESTful 的 Web API 和 GraphQL 等。 RPCRemote Procedure Call (RPC)是一種常用的計算機網絡技術,用于在遠程計算機上執行本地方法或函數。與傳統的本地方法調用不同,RPC允許客戶端在與遠程服務器進行通信時直接執行遠程方法,而不需要在本地進行額外的編譯和安裝。 在RPC里,客戶端通常是把方法名和參數傳遞給服務器,然后服務器返回JSON或XML。
RESTRepresentational State Transfer (REST) 是一種現今廣泛使用的 Web API 設計風格。REST 是指通過使用表述性狀態傳遞來管理 Web 應用程序中的狀態。 REST(Representational State Transfer)的核心是資源,它是一個可以被標識的實體,通常有一個名稱和地址。每個資源都可以被獨立地識別、描述和操作,而不必知道它所屬的系統或應用程序。因此,資源是REST架構的基礎,是REST API設計和實現的核心概念。 REST API就是把數據以資源的形式暴露出來,并使用標準的HTTP方法來代表創建、讀取、更新和刪除資源等事務。
REST與RPC區別REST和RPC都是用于實現客戶端與服務器之間的通信的架構模式。但是它們的關注點不同。REST是一種基于資源的架構模式,強調在Web上通過URI定位資源,通過HTTP協議進行資源的讀寫操作。而RPC是一種基于動作的架構模式,強調在客戶端和服務器之間傳遞請求和響應的過程,包括請求參數、返回值、錯誤信息等。簡單來說,REST關注的是資源,而RPC關注的是請求和響應。 GraphQLGraphQL 是一種現代化的 API 查詢語言,它于2014年由 Facebook 推出。GraphQL 是一種用于創建 RESTful 服務的查詢語言,它可以通過請求一個 API 而獲得需要的所有數據,而不是像 RESTful API 一樣請求單個資源。 GraphQL為客戶端提供了更大的控制權,使得客戶端能夠明確指定需要獲取的數據結構。而服務器則會根據客戶端的請求,返回完全匹配的數據結構。這種靈活的方式能夠更有效地減少數據冗余,并且能夠幫助開發者更快速地構建高質量的應用程序。 與REST和RPC不同,GraphQL API只需要一個端點來提供數據。它也不需要使用不同的HTTP動詞,只需要使用POST方法。在JSON的body中,你需要明確指定要執行查詢還是修改操作。 什么時候應該用哪種Web API呢?
HTTP協議規范常見狀態碼及含義200 - 請求成功,已經正常處理完畢 201 - 創建成功 301 - 請求永久重定向,轉移到其它URL 302 - 請求臨時重定向 304 - 請求被重定向到客戶端本地緩存 400 - 客戶端請求存在語法錯誤 401 - 客戶端請求沒有經過授權 403 - 客戶端的請求被服務器拒絕,一般為客戶端沒有訪問權限 404 - 資源未找到,客戶端請求的URL在服務端不存在 500 - 服務端出現異常 MIME類型對應列表
GET和POST的區別
RESTful URL請求格式與傳統請求格式比較如下
該文章在 2024/4/12 22:57:51 編輯過 |
關鍵字查詢
相關文章
正在查詢... |