2010-12-02 46 views
2

我爲我的Web服務實現了客戶端。每個Web方法自動生成的文件包含硬編碼綁定到Web服務端點:gsoap:如何使其可配置?

soap_endpoint = "http://localhost/MyService.asmx"; 

這是罰款爲發展宗旨,但推說要PROD之前,我需要更換與PROD Web服務地址的字符串。

是否有可能管理gSOAP,以便它生成這個字符串被放在某個「外部」變量中?

或者我應該在部署前每次更換這些端點值?

謝謝。

回答

4

從gSOAP的編譯器生成的函數看起來像:

soap_call_ns1__foo(struct soap* soap, char *URL, char *action, char *symbol, resultType &Result); 

的參數的URL是端點ADRESS。如果傳遞NULL,則使用WSDL文件中的端點。但是你的客戶端可以用任何其他端點調用這個函數 - 例如在你的客戶端配置文件中定義。

如果您的客戶端正在使用 - 從gSoap編譯器生成的代理類,也可以設置端點。代理類有一個名爲endpoint的成員,您可以在調用服務方法之前設置該成員。

相關問題