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

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

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

因爲我也是剛開始入門技術能力有限,有問題你們一塊兒討論下吧chrome

系列導航

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

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

三.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.htmlrestful

八.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請求

相關文章
相關標籤/搜索