我为我的Web服务实现了客户端。每个Web方法的自动生成文件包含对Web服务端点的硬编码绑定:
soap_endpoint = "http://localhost/MyService.asmx";
它适用于开发目的,但在将其推送到PROD之前,我需要用PROD Web服务地址替换这些字符串。
是否可以管理gSOAP,以便将此字符串生成一些“外部”变量?
或者我应该在每次部署之前替换这些终点值?
感谢。
答案 0 :(得分:5)
gSoap编译器生成的函数如下所示:
soap_call_ns1__foo(struct soap* soap, char *URL, char *action, char *symbol, resultType &Result);
参数URL是端点地址。如果传递NULL,则使用WSDL文件中的端点。但是您的客户端可以使用任何其他端点调用此函数 - 例如,在客户端配置文件中定义。
如果您的客户端使用 - 来自gSoap编译器生成的 - 代理类,也可以设置端点。代理类有一个名为endpoint的成员,您可以在调用服务方法之前设置它。
答案 1 :(得分:0)
在gSoap编译器生成的*** proxy.h头文件中,您将找到
在类构造函数中“endpoint =”http://localhost/MyService“。
将“localhost”替换为您的网络服务的“IP地址”,然后再将其推送到PROD。