我已閱讀了有關asp.net Web API的知識,但我不確定是否理解Web API工具背後的概念。現在讓我們說,我已經定義了從APIController派生的控制器,並且我可以使用URL調用這個控制器,然後控制器將JSON結果返回給客戶端,,,如何使用asp.net Web API開發RESTful Web服務器
那麼,這是否意味着,我的asp.net MVC Web應用程序中的APIController是作爲RESTfull Web服務公開的? BR
我已閱讀了有關asp.net Web API的知識,但我不確定是否理解Web API工具背後的概念。現在讓我們說,我已經定義了從APIController派生的控制器,並且我可以使用URL調用這個控制器,然後控制器將JSON結果返回給客戶端,,,如何使用asp.net Web API開發RESTful Web服務器
那麼,這是否意味着,我的asp.net MVC Web應用程序中的APIController是作爲RESTfull Web服務公開的? BR
無論您的API是否被認爲是'REST滿'是一個設計問題,而不是使用哪個庫/項目模板的問題。請記住,API的全部要點是公開一個簡單的編程接口 - 在這個方面它如何在幕後實現並不重要。
但是,WebAPI項目模板確實很適合設計restfull服務,因爲它內置了設計原則。
後面的REST API的基本思想是:
這是沒有太大的不同的F使用基本的MVC Controller/Actions設計REST API,WebAPI使它變得更容易一些。
這裏是一個不錯的視頻系列:http://www.asp.net/web-api/videos/getting-started/your-first-web-api
好Apicontroller完全以不同的MVC控制器,它來自於WCF的WebAPI,但取得了非常類似於經典的asp.net控制器的開發。重點是加快制定休息服務。
所以,你只需要像往常一樣分配一個路由,製作一些控制器,而不是使用querystring和body json(默認)並自動轉換到Poco類並返回給你另一個自動序列化爲jsion的Poco類。
我只想補充到安德斯
REST代表Representational state transfer
架構所以基本上你選擇一個resource
像http://www.example.com/USER
你指示服務器上做資源的操作。由哪些Web API會被髮送
HTTP
請求的類型指定出來的箱子
POST
的 - 添加新用戶
PUT
- 編輯現有用戶信息
GET
- 只需retrives用戶(S)信息
DELETE
- 刪除用戶信息
,這是REST
正在發送或recived(JSON
或XML
)的類型的數據。不是其餘規格的一部分。也可以決定asp.net web api數據返回並以什麼格式發送使用 Accept
和Content-Type
標題與您的請求
很抱歉,更正您,但ApiController不是來自WCF Web API項目。 – user1527329 2012-07-24 08:44:09
是的你是對的。我不清楚。我的意思是Apicontroller不擴展Controller甚至ControllerBase類,它只是實現IHttpController – 2012-07-24 08:52:35