2010-09-27 58 views
1

爲什麼不只是在配置中添加http獲取支持,並且這樣做的好處是該服務將兼容SOAP和REST?將asmx SOAP webservice轉換爲ASP.NET上的REST:WCF真的有用嗎?

什麼是所有關於休息的嗡嗡聲? WCF會帶來什麼?

我的意思是,如果我只是在我的web.config設置爲我的ASMX web服務能夠接受得到一個REST客戶端應用程序的觀點的差異其餘的語法

<webServices> 
    <protocols> 
     <add name="HttpGet" /> 
    </protocols> 
    </webServices> 

和一個WCF REST實現http://geekswithblogs.net/.NETonMyMind/archive/2008/02/04/119291.aspx

似乎沒有人能真正回答...是因爲它很難或者是我的問題是愚蠢的:)

客戶端只能看到URL(封裝原則),所以我爲什麼還要更多呢?什麼是更多的仍然不清楚:)

其他問題:如果我們切換到WCF,我們需要更改網址?如果是,那意味着我們所有的百位合作伙伴客戶都會被打破,我將不得不通知他們我們的變化?

+0

什麼是REST - 什麼是REST - http://stackoverflow.com/questions/671118/what-exactly-is-restful-programming – 2016-01-20 21:23:42

回答

5

WCF與REST無關。您可以在不使用WCF & SOAP的東西建立自己的REST服務。在.Net 2.0

檢查出這個樣本REST服務構建和退房優秀.Net open source REST implementation

要了解更多關於REST,閱讀這些

  1. http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm
  2. http://en.wikipedia.org/wiki/Representational_State_Transfer
  3. What exactly is RESTful programming?
  4. REST/SOAP endpoints for a WCF service
  5. Understanding REST: Verbs, error codes, and authentication

爲了您的評論:

如果我已經有一個ASMX web服務 可轉換休息只是 一行配置文件?

ASMX服務構建於SOAP上,通過HTTP構建一層。 REST僅僅是基於HTTP的,您可以像訪問普通URL一樣訪問(或調用)您的業務資源。沒有更多的抽象。

在REST中,資源由持久標識符(URL)標識。

對於在產品目錄系統中,通過使用asmx創建一組函數來添加,更新,刪除產品。像addProduct(),updateProduct等。

但在REST中,您將擁有單點訪問權限,如 http:\ mysystem \ prodcuts。要檢索,添加,更新和刪除產品,您將在相同的URL上使用相應的HTTP動詞(GET,POST,PUT,DELETE)。

所以你不能只是將asmx轉換爲REST,因爲它們都以不同的方式解決問題。

+0

嗨,感謝您的鏈接,但有什麼興趣使用另一個框架,如wcf或你點到http://www.codeproject.com/KB/webservices/ReSTBasedServiceForCSharp.aspx如果我已經有一個asmx webservice可以在一行配置文件中轉換爲REST? – user310291 2010-09-27 18:22:27

+0

ASMX Web服務現在被微軟視爲「傳統技術」。這對你而言可能並不重要。更重要的是,WCF可能比ASMX web服務強100倍。 – 2010-09-27 20:01:36

+0

Ramesh感謝您更新您的答案,但仍然來自EXTERNAL用戶或Web服務的客戶端我無法在您的答案中看到url語法的區別,因爲它也可以使用不使用wsdl的普通get? – user310291 2010-09-28 18:07:33

相關問題