2011-02-09 45 views
8

是否有充分的理由在不使用WSDL「文件」的情況下部署或使用SOAP服務?爲什麼沒有WSDL的SOAP?

說明:

我在第三方創造了不符合他們也創造了非常WSDL文件中的SOAP服務的情況。我想我被迫忽略WSDL文件以便使用此服務。因此,我正在研究如何做到這一點。

我真的想知道爲什麼它甚至有可能做到這一點?意圖是什麼?

它的設計是爲了讓我們可以使用糟糕的程序員提供的差服務嗎?當然,一定有更好的理由。我幾乎希望這是不可能的。然後我可以要求他們正確寫下來。

回答

10

WSDL應該是一個描述SOAP服務的公共文檔,因此描述服務中所有可用方法的簽名。

當然,可能有服務提供商希望向某些消費者展示某項服務,但不希望公開該服務的簽名,如果只是爲了讓他們更難以使用,不想使用該服務找到它或試圖使用它。例如,服務的簽名可能會公開一些關於其數據模式的私有信息。

但是我沒有看到編寫與服務不匹配的WSDL的任何藉口。我擔心,如果他們無法獲得WSDL,服務的質量會是什麼樣子?

要回答其他問題,您可以在不使用WSDL的情況下使用該服務。例如,如果您使用Visual Studio,則可以讓VS根據不正確的WSDL爲您構建代理,然後對其進行調整以匹配正確的服務方法簽名。您只需確保代理中的數據合同和方法合同與實際的服務數據合同和方法合同相匹配。

+0

是的,這是關於不使WSDL無法公開訪問的好處。但是,是否有任何用例呢?要製作一個沒有WSDL的SOAP服務? – 2011-02-09 10:14:57