最近發(fā)現(xiàn)web api很火,園內(nèi)也有各種大神已經(jīng)在研究,本人在asp.net官網(wǎng)上看到一個系列教程,原文地址: http://bitoftech.net/2013/11/25/detailed-tutorial-building-asp-net-web-api-restful-service/ 。于是打算跟著學(xué)一下,把學(xué)習(xí)過程記錄在博客園的同時也分享給大家。
每一篇結(jié)束后我都會把代碼共享
由于我也是剛開始入門技術(shù)能力有限,有問題大家一起討論下吧
系列導(dǎo)航
一.使用Entity Framework Code First構(gòu)建數(shù)據(jù)庫模型(一) http://www.cnblogs.com/fzrain/p/3491804.html
二.使用Repository模式構(gòu)建數(shù)據(jù)庫訪問層(二) http://www.cnblogs.com/fzrain/p/3503952.html
三.ASP.NET Web Api入門(三) http://www.cnblogs.com/fzrain/p/3510035.html
四.實現(xiàn)模型工廠,依賴注入以及配置格式(四) http://www.cnblogs.com/fzrain/p/3520442.html
五.在Web Api中實現(xiàn)HTTP的PUT,POST,GET和DELETE方法(五)
六.實現(xiàn)資源間的聯(lián)系(六)
七.實現(xiàn)資源的分頁(七)
八.Web Api中的安全問題(八)
九.版本變化的前奏(九)
十.多種技術(shù)實現(xiàn)版本變化(十)
十一.使用ETag兌現(xiàn)資源(十一)
待續(xù)。。。。。。
基于REST風(fēng)格服務(wù)的簡介
REST表示表述性狀態(tài)轉(zhuǎn)移,它代表的是運行在HTTP上的一個簡單的無狀態(tài)的架構(gòu),每一個唯一URL代表一個資源。在創(chuàng)建RESTful服務(wù)時,應(yīng)遵循四個基本的設(shè)計原則:
1.使用HTTP方法(動詞),使用統(tǒng)一的方式來獲取資源(交互的統(tǒng)一接口),即檢索資源使用GET,創(chuàng)建資源使用POST, 更新資源使用PUT / PATCH,刪除資源使用DELETE。
2.與資源的交互是無狀態(tài)的, 因此由客戶端發(fā)起的每個請求應(yīng)當(dāng)包括HTTP請求的所有參數(shù),上下文信息和所需服務(wù)器返回數(shù)據(jù)數(shù)據(jù)類型等。
3.資源標(biāo)識應(yīng)通過URI來定義,簡單來說應(yīng)該是只使用URI來完成服務(wù)器與客戶端和資源之間的交互。這些URI可以看作一個RESTful服務(wù)提供的接口。
4.支持JSON或/和XML等多種格式作為數(shù)據(jù)傳輸格式。
關(guān)于RESTful服務(wù)的更多信息,你可以參考: http://www.cnblogs.com/light169/archive/2007/12/31/1021814.html
ASP.NET Web Api簡介
ASP.NET WEb Api首次出現(xiàn)是在ASP.NET MVC4的時候,到目前為止已經(jīng)有一年半的歷史了(對我來說還是新知識o(╯□╰)o)。它用于建立一個HTTP服務(wù)可以被各種客戶端(例如:瀏覽器,智能手機終端,桌面客戶端等)來調(diào)用的框架。它并不是ASP.NET MVC框架的一部分,它作為ASP.NET平臺的一部分可以用于MVC,Web Form或者是作為一個獨立的服務(wù)存在。
時至今日,隨著智能手機的飛速發(fā)展和普及,單頁的應(yīng)用程序猛增的趨勢。使用一個輕量級的Web Api來把你的服務(wù)暴露給客戶端就顯得極其重要。ASP.NET Web Api 將使用很多HTTP的特征(URIs,請求/相應(yīng)的處理模型,標(biāo)題部分,版本控制以及各種傳輸數(shù)據(jù)的格式)帶你一起走進基于REST風(fēng)格服務(wù)的精彩世界。
本次系列簡介
我們秉持簡單,易于理解的原則,同時覆蓋了ASP.NET Web Api很多不同的特性來構(gòu)建我們的項目:
我們將創(chuàng)建一個培訓(xùn)系統(tǒng),這個系統(tǒng)對外提供一些簡單的API,該API允許學(xué)生報名參加不同的課程,讓老師查看登記在每個課程的學(xué)生,在課程和學(xué)生之間實現(xiàn)CRUD以及更多的操作。在下一章我會把具體的用到數(shù)據(jù)庫模型展示給大家。
本次系列將會涉及一下的一些知識:
1.采用不同的路由配置,控制器,資源間的關(guān)聯(lián),格式的響應(yīng),和過濾器
2.使用NInject實現(xiàn)依賴注入
3.應(yīng)用不同的格式響應(yīng)分頁結(jié)果
4.在多個資源實現(xiàn)復(fù)雜的CRUD操作
5.使用SSL確保安全性
6.使用不同的技術(shù)實現(xiàn)API的版本(URL的版本 :查詢字符串,版本頭部,接受頭部)
7.實現(xiàn)資源利用
備注:在本次系列中,我們不構(gòu)建客戶端應(yīng)用程序,我們將使用 Fiddler or Postman 來發(fā)送HTTP請求
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
