【发布时间】:2010-12-25 15:55:52
【问题描述】:
我正在编写一个简单的 cmd 客户端来尝试使用我开发的 WCF Web 服务,以便测试如何使用非托管 C++ 连接到 Web 服务。
我一直在按照本教程http://www.blinnov.com/en/2008/01/22/wcf-service-unmanaged-client/ 一步步进行操作,但仍然无法成功使用该服务。
#include "BasicHttpBinding_USCOREIService1.nsmap"
#include "soapBasicHttpBinding_USCOREIService1Proxy.h"
#include <iostream>
#include <string>
using namespace std;
int main(int argc, char **argv)
{
BasicHttpBinding_USCOREIService1Proxy myProxy;
static const char* const endPoint = "http://localhost:50181/Service1.svc";
myProxy.soap_endpoint = endPoint;
_ns1__GetData param;
_ns1__GetDataResponse response;
param.fileName = &std::string("house.ifc");
if ( myProxy.GetData(¶m, &response) == SOAP_OK) {
cout << "Hello" << endl; //Succeeded
}
else {
myProxy.soap_stream_fault(std::cerr);
}
return 0;
}
它总是给我 错误 415 错误:SOAP-ENV:Server[no subcode] “HTTP 错误” 详细信息:HTTP/1.1 415 不支持的媒体类型 我整天都在努力完成它,但仍然没有什么新鲜事。 :(
【问题讨论】:
-
我不知道问题出在哪里?我已经按照教程中的说明使用了 BasicHttpBinding,但仍然出现相同的消息。有没有其他方法可以实现,使我能够使用非托管 C++ 连接到 WCF Web 服务?