使用ASP.NET Web Api構建基於REST風格的服務實戰系列教程【開篇】【持續更新中。。。】


最近發現web api很火,園內也有各種大神已經在研究,本人在asp.net官網上看到一個系列教程,原文地址:http://bitoftech.net/2013/11/25/detailed-tutorial-building-asp-net-web-api-restful-service/。於是打算跟着學一下,把學習過程以及自己的理解記錄在博客園的同時也分享給大家。

每一篇結束后我都會把代碼共享

由於我也是剛開始入門技術能力有限,有問題大家一起討論下吧

系列導航

一.使用Entity Framework Code First構建數據庫模型(一)http://www.cnblogs.com/fzrain/p/3491804.html

二.使用Repository模式構建數據庫訪問層(二)http://www.cnblogs.com/fzrain/p/3503952.html

三.ASP.NET Web Api入門(三)http://www.cnblogs.com/fzrain/p/3510035.html

四.實現模型工廠,依賴注入以及配置格式(四)http://www.cnblogs.com/fzrain/p/3520442.html

五.在Web Api中實現HTTP的PUT,POST,GET和DELETE方法(五)http://www.cnblogs.com/fzrain/p/3527765.html

六.實現資源間的聯系(六)http://www.cnblogs.com/fzrain/p/3535756.html

七.實現資源的分頁(七) http://www.cnblogs.com/fzrain/p/3542608.html

八.Web Api中的安全問題(八)http://www.cnblogs.com/fzrain/p/3552423.html

九.Api變了,客戶端怎么辦?(九)http://www.cnblogs.com/fzrain/p/3558765.html

十.多種技術實現版本變化(十)      同(九)兩篇合一了

十一.使用ETag和CacheCow緩存資源(十一)http://www.cnblogs.com/fzrain/p/3618887.html

外傳.基於特性路由(Attribute Routing)(外傳)http://www.cnblogs.com/fzrain/p/3591040.html

 待續。。。。。。

第二季

一.OData簡介和一個小應用(一)http://www.cnblogs.com/fzrain/p/3688439.html

二.使用Web Api創建只讀的OData服務(二)http://www.cnblogs.com/fzrain/p/3923727.html

基於REST風格服務的簡介

REST表示表述性狀態轉移,它代表的是運行在HTTP上的一個簡單的無狀態的架構,每一個唯一URL代表一個資源。在創建RESTful服務時,應遵循四個基本的設計原則:

      1.使用HTTP方法(動詞),使用統一的方式來獲取資源(交互的統一接口),即檢索資源使用GET,創建資源使用POST,  更新資源使用PUT / PATCH,刪除資源使用DELETE。

      2.與資源的交互是無狀態的, 因此由客戶端發起的每個請求應當包括HTTP請求的所有參數,上下文信息和所需服務器返回數據數據類型等。           

      3.資源標識應通過URI來定義,簡單來說應該是只使用URI來完成服務器與客戶端和資源之間的交互。這些URI可以看作一個RESTful服務提供的接口。

      4.支持JSON或/和XML等多種格式作為數據傳輸格式。

      關於RESTful服務的更多信息,你可以參考:http://www.cnblogs.com/light169/archive/2007/12/31/1021814.html

ASP.NET Web Api簡介

ASP.NET WEb Api首次出現是在ASP.NET MVC4的時候,到目前為止已經有一年半的歷史了(對我來說還是新知識o(╯□╰)o)。它用於建立一個HTTP服務可以被各種客戶端(例如:瀏覽器,智能手機終端,桌面客戶端等)來調用的框架。它並不是ASP.NET MVC框架的一部分,它作為ASP.NET平台的一部分可以用於MVC,Web Form或者是作為一個獨立的服務存在。

aspnet-webapi

時至今日,隨着智能手機的飛速發展和普及,單頁的應用程序猛增的趨勢。使用一個輕量級的Web Api來把你的服務暴露給客戶端就顯得極其重要。ASP.NET Web Api 將使用很多HTTP的特征(URIs,請求/相應的處理模型,標題部分,版本控制以及各種傳輸數據的格式)帶你一起走進基於REST風格服務的精彩世界。

本次系列簡介

我們秉持簡單,易於理解的原則,同時覆蓋了ASP.NET Web Api很多不同的特性來構建我們的項目:

我們將創建一個培訓系統,這個系統對外提供一些簡單的API,該API允許學生報名參加不同的課程,讓老師查看登記在每個課程的學生,在課程和學生之間實現CRUD以及更多的操作。在下一章我會把具體的用到數據庫模型展示給大家。

本次系列將會涉及一下的一些知識:

    1.采用不同的路由配置,控制器,資源間的關聯,格式的響應,和過濾器

    2.使用NInject實現依賴注入

    3.應用不同的格式響應分頁結果

    4.在多個資源實現復雜的CRUD操作

    5.使用SSL確保安全性

    6.使用不同的技術實現API的版本(URL,查詢字符串,版本頭部,接受頭部)

    7.實現資源緩存

備注:在本次系列中,我們不構建客戶端應用程序,我們將使用Fiddler or Postman 來發送HTTP請求


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM