首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试理解gsoap

尝试理解gsoap
EN

Stack Overflow用户
提问于 2011-04-06 01:53:26
回答 1查看 904关注 0票数 1

我正在使用gsoap创建我的第一个web服务客户端。我能够运行gsoap提供的calc示例。

现在我正在尝试从WCF Webservice访问字符串GetData()函数。我执行了wsdl2h和soapcpp2步骤,并生成了.h文件。在xxxxproxy.h中,我看到GetData的原型如下

代码语言:javascript
复制
/// Web service operation 'GetData' (returns error code or SOAP_OK)
    virtual int GetData(_ns1__GetData *ns1__GetData, _ns1__GetDataResponse *ns1__GetDataResponse);

Can someone tell me what should I write in my main.cpp to access GetData. I have following code in main.cpp

#include <QtCore/QCoreApplication>
#include "soapWSHttpBinding_USCOREIAquaLinkProxy.h"
#include "WSHttpBinding_USCOREIAquaLink.nsmap"

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    WSHttpBinding_USCOREIAquaLinkProxy webService;
    std::cout <<"Sent request"<<std::endl;
    std::string result;
    if(webService.GetData(?????? )==SOAP_OK)
    {
        std::cout << "Returned "<< ????? <<std::endl;
    }
    else
    {
        webService.soap_stream_fault(std::cerr);
    }
    return a.exec();
}

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-04-06 04:12:58

函数GetData中的第一个参数_ns1__GetData是请求参数,第二个参数是响应参数。您应该尝试以下操作:

代码语言:javascript
复制
_ns1__GetData request;
request.???? = ???? // I don't know the WCF Webservice
_ns1__GetDataResponse response;
if(webService.GetData(&request, &response) == SOAP_OK)
{
    std::cout << "Returned " << response.????;
}

我不知道WCF Webservice。但是我猜你必须用一些值来填充请求实例。让我好奇的是,_ns1__GetData_ns1__GetDataResponse的类名都是以下划线开头的。我使用gSoap很长一段时间了,名字总是没有下划线开头。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5556220

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档