首页 文章

gSOAP RESTful实现是否需要定义WSDL

提问于
浏览
0

我查看了gSOAP中的示例,其余示例定义了WSDL,然后为客户端和服务器应用程序生成代码 . 有没有办法在不定义WSDL的情况下使用gSOAP实现RESTful服务?

当我尝试编译下面的示例时,我得到以下错误

“/ usr / local / lib / libgsoap .a(libgsoap ___ a-stdsoap2_cpp.o):在函数 soap_set_error': /home/mtwells/Downloads/gsoap-2.8/gsoap/stdsoap2_cpp.cpp:17314: undefined reference to soap_faultcode'”

因为它正在使用wsdl2h查找生成的代码 .

1 #include "plugin/httpget.h"
2 
3
4 int main(int argc, char **argv)
5 {
6     struct soap *soap = soap_new();
7
8     soap_destroy(soap);
9     soap_end(soap);
10     soap_free(soap);
11     return 0;
12 }

https://www.cs.fsu.edu/~engelen/soapdoc2.html#tth_sEc19.38.2

1 回答

  • 1

    gSOAP soapcpp2编译器还可以生成用于从头开始实现服务的WSDL定义,即“无需先定义WSDL” . 这会“关闭循环”,因为它可以直接从头文件中的set op C / C操作开发Web服务,而无需用户分析Web服务详细信息 .

    根据gSOAP手册1.2,gSOAP soapcpp2编译器可以根据头文件生成所需的客户端和服务器应用程序 . 这意味着 then you would then have to write the header files all by yourself and feed it to the soapcpp2 compiler 不仅会生成服务/客户端应用程序,还会为您生成缺少的wsdl文件(如果将其包含在选项中)!在这种情况下,您不需要wsdl2h工具 .

    问候

相关问题