Wcf體現Restful風格

2021-06-28 13:49:35 字數 2338 閱讀 2480

含狀態傳輸(representational state transfer)的軟體架構風格。主要特點

1、  資源是由uri來指定: 例如

2、  對資源的操作 包括獲取、建立、修改和刪除資源,這些操作正好對應http協議提供的get、post、put和delete方法

3、  傳輸的資源:

web服務接受與返回的

網際網路**型別

,比如:

json

,xml ,

yaml 等。

下面通過乙個簡單的例子逐個問題解決。

圖書管理,功能可以檢視全部數目,也可以檢視一本書的詳情,同樣也可以通過瀏覽器對書目資源進行新增、修改、刪除。

介面契約定義,將數目看做一種資源,通過設定uritemplate屬性,我們可以通過uri訪問書目資源。(主要webget

對應於http中的get請求方法,webinvoke對應於put、post、delete)這裡有對應的我個操作,檢視所有數目,檢視具體那本書,對書進行新增、更新、刪除。

[servicecontract]

public inte***ce ibookservice

")]//webget對應於get請求

bookgetbookbyid(string id);

[operationcontract]

[webinvoke(uritemplate = "addbook",method = "put")]

void addbook(bookbook);

[operationcontract]

[webinvoke(uritemplate="updatebook",method="post")]

void updatebook(bookbook);

[operationcontract]

[webinvoke(uritemplate="deletebook/",method="delete")]

void deletebook(stringid);

}[datacontract]

public class book

[datamember]

public stringbookname

[datamember]

public stringbookprice

}

這裡為了簡單將書目存在乙個靜態的泛型集合中。

public class bookservice : ibookservice

,new book};

}return _listbooks;

}public bookgetbookbyid(string id)

return book;

}catch

}//////新增

//////

public void addbook(book book)

//////刪除

//////

public voiddeletebook(string id)

public voidupdatebook(book book)

}}

訪問所有數目http://localhost:53215/ibookservice.svc/all

訪問具體書目http://localhost:53215/ibookservice.svc/book/1

對書目管理這裡筆者用fiddler的composer對伺服器put post get請求

新增書puthttp://localhost:53215/ibookservice.svc/updatebook  http/1.1

host:localhost:53215

conent-length:187

expect:100-continue

accept-encoding:gzip,deflate

sharepoint2010

$29.03

更新(這裡是先刪除在更新)

sharepoint2010開發最佳實踐

$29.0

3這裡只是對restful風格在wcf中簡單介紹,有不足的地方還希望大家提出,多多交流,熱愛程式設計。

構建Restful風格的WCF

用vs2017新增wcf專案,新增專案後應該直接可以執行起來 執行起來 開啟類似這個目錄,應該可以看到service1服務的幫助文件 http localhost 52217 service1.svc 並可開啟webservice服務 http localhost 52217 service1.sv...

設計風格 Restful

rest是設計風格而不是標準,只提供了一組設計原則和約束條件 資源由uri來指定 uri 統一資源識別符號 對資源的包括包括獲取 建立 修改 和刪除資源 這些操作正好對應http協議提供的get post put和delete方法 通過操作資源的表現形式來操作資源 非rest風格url http q...

restful風格概述

利用http協議的四種操作get put delete post實現對伺服器資源的增刪改查 get 用於查詢,post用於新增,put用於修改,delete用於刪除 restful風格程式設計。restful 更強調是資源 webservice,rml等訪問技術更強調過程。restful的重點體現在...