2010-12-17 132 views
0

我是web服務的新手。我已經使用AXIS2編寫了一些客戶端,但僅此而已。現在我必須創建一些服務,供其他人使用。我們有一個使用wicket編寫的Web應用程序。網絡服務和網絡應用程序

我的web服務是否需要成爲Web應用程序的一部分。它可以單獨部署,但仍使用Web應用程序使用的相同代碼。

有關如何開始包括安全性,身份驗證等任何提示非常感謝您閱讀材料,教程的任何參考。

回答

2

考慮的問題之一,在一個時間:

  1. 是否web服務需要是Web應用程序的一部分嗎?不可以。它可以是自己部署的完全獨立的項目。

  2. 它可以單獨部署嗎?是的,見#1。

  3. 它可以使用與web應用程序相同的代碼嗎?是。這是你如何參考網絡應用程序的問題。您可以考慮分支代碼,或者只是將其構建到Web應用程序中以開始。

一對夫婦的資源:
RESTful webservices with Wicket
Web service API for Wicket

請記住,我從未使用過檢票口之前,所以我不知道,如果上面的鏈接是值得的。

關於安全性。您通常會爲您的客戶提供某種類型的web api「key」。然後將該密鑰傳遞給每個api調用,然後您將驗證其身份驗證和授權。這是大多數系統的工作原理。

此外,就像使用網絡應用程序一樣,對API的調用應通過SSL連接進行,以嘗試阻止任何人竊聽對話。

就日誌而言,這與記錄您設置的普通Web應用程序沒有區別。有大量的日誌工具,如log4j

+0

你能否提供一些有關安全,授權和記錄請求及響應的鏈接。 – user373201 2010-12-17 17:39:40

2

簡答:一般來說,可以,您可以將您的Web服務部署爲Web應用程序的一部分。您應該將您的Web服務視爲您的業務邏輯的另一個「視圖」。如果您遵循了良好的模式(例如將您的業務邏輯放入庫中而不是控制器),這應該不會太難。

您可能希望通過將共享業務邏輯放在一個庫中來「強制執行」,然後將Web服務和Web應用程序拆分爲另一個項目。

有用於Web服務的實在是太多選項全部列出來,但這裏看作是一個教程的地方:

http://static.springsource.org/spring-ws/sites/1.5/reference/html/tutorial.html

0

按照下面的鏈接,介紹瞭如何使您的ASP.Net Web應用程序功能作爲Web服務。下面的文章使用TrendsInInvestment web應用程序來解釋過程。在實現Web服務時,包含認證,緩存和分頁等功能。

1)文章鏈接。 http://securityresearch.in/index.php/tutorials/how-to-expose-your-asp-net-web-application-functionality-as-awebservice

2)修改後的Web應用程序,Web服務及其示例代碼的鏈接。 http://securityresearch.in/index.php/projects/f_security/trends-in-investment-web-service-1-0-is-now-available

+1

問題是關於用Java編寫的Web服務,而不是.NET。 – joergl 2012-10-21 15:57:58