C语言 如何使用wsdl2c工具构建支持ssl的客户端代码,以便与axis2一起使用



我已经使用WSDL2C创建了用于访问axis2 web服务的客户机存根代码。我的服务在http &https地址。当我编译客户端代码(与visual studio)使用http端点地址,它工作得很好,但后来我想使用https地址,我不能调用任何服务操作(我已经启用了transportSender &客户端axis2.xml中https协议的transportReceiver)。
在WSDL2C中似乎没有生成启用ssl的C代码的选项,那么我应该怎么做才能通过https协议调用服务操作呢?我应该传递任何编译器标志或设置任何环境变量来做到这一点吗?

没有其他选项来构建SSL客户端。你只需要像往常一样构建客户端,但是要调用HTTPS服务而不是HTTP,你必须设置HTTPS端点而不是HTTP。

的例子:

const axis2_char_t* address = NULL;
if (doing_https) {
     /* using HTTPS endpoint */
    address = "https://localhost:9090/axis2/services/echo";
} else {
    /* using HTTP endpoint */
    address = "http://localhost:9090/axis2/services/echo";
}
/* Create EPR with given address */
endpoint_ref = axis2_endpoint_ref_create(env, address);
/* Setup options */
options = axis2_options_create(env);
axis2_options_set_to(options, env, endpoint_ref);
/* Create client */
svc_client = axis2_svc_client_create(env, client_home);
/* Set service client options */
axis2_svc_client_set_options(svc_client, env, options);
.....

相关内容

  • 没有找到相关文章

最新更新