2010-04-26 71 views
2

我的公司正計劃在多個應用程序中實施解決方案,這將有助於驗證數據輸入點的郵寄地址。我們使用UPS的擴展地址驗證(XAV)Web服務API來驗證地址。如何設計可以被多個端點使用的Web服務(微軟)?

我們當前的計劃是構建一個.NET Web服務,可用於在我們的應用程序和UPS API之間進行通信。我們在VB6,經典的ASP和.NET 2.0中都有應用程序,所以我們希望實現一個可以在每個編程環境中輕鬆使用的解決方案。

我們的(微軟)設計可供多個客戶端使用的Web服務的選項是什麼?特別是,有沒有一種方法可以設計出一個可以使用JSON響應的Web服務(如果我們想使用JavaScript來驗證我們的Web頁面)以及XML?

我是新來的設計Web服務,並希望確保我們考慮我們的所有選項。我聽說過像asmx,WCF,OData等,但我不知道哪些框架將支持我們正在嘗試做什麼和從哪裏開始。

+0

您對.NET版本有任何限制(即至少3.5)? – 2010-04-26 20:02:06

+0

根據我對Web服務的經驗,只要客戶端知道如何以您使用的格式發送和接收數據,使用的內容並不重要。我知道我已經通過Java和C#使用各種語言編寫的Web服務,具體取決於當時最容易使用的語言。 – Tarka 2010-04-26 20:04:20

+0

@Nathan很好的問題。我們目前使用2.0,但如果通過升級獲得大量功能,我相信我們會考慮它,至少對於Web服務本身來說。我不確定如何升級.NET 2.0客戶端應用程序;這是很多需要擔心的安裝。 – 2010-04-26 20:04:45

回答

1

我建議看看他們作爲WCF服務實現。您可以指定multiple bindings以瞭解如何調用服務,包括HTTP,TCP,MSMQ等,所有這些都可以通過配置來實現。

生成在.NET中使用的代理類實際上是微不足道的(使用svcutil.exe),並且應該給你一些關於在另一種語言中實現所需的知識。您應該能夠使用VB6中的.NET代理類或使用COM互操作的經典ASP(vbscript)(我沒有嘗試過使用WCF,但它應該與任何其他互操作場景相同),soap工具包或XMLHttpRequest目的。看看introductory article on the subject

要使用WCF,至少需要.NET 3.0,但是對XML Web服務(asmx)的靈活性不僅僅是值得的。

1

您可能會希望在WCF中構建服務,然後使用適當的「綁定」對其進行公開。您可能需要超過1個綁定配置,但這是WCF開始支付的位置。

話雖如此,我不知道如何連接VB6。它有Webservice庫嗎?

1

從VB6使用Web服務的最佳方式是創建一個訪問該服務的.NET類,然後將該類作爲COM對象公開。然後VB6可以使用COM對象。