gsoap:如何使其可配置?

时间:2010-12-02 23:44:54

标签: web-services configuration gsoap

我为我的Web服务实现了客户端。每个Web方法的自动生成文件包含对Web服务端点的硬编码绑定:

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

它适用于开发目的,但在将其推送到PROD之前,我需要用PROD Web服务地址替换这些字符串。

是否可以管理gSOAP,以便将此字符串生成一些“外部”变量?

或者我应该在每次部署之前替换这些终点值?

感谢。

2 个答案:

答案 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。