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