我们正在研究开发一个Web服务,以作为用C ++编写的网络安全原型的浏览器显示/ gui的基础。我在Web服务方面的经验仅限于Java。我更喜欢Java中的Web服务,因为它处于“常规路径”。
一个确定的做法是简单地编写一个调用Web服务的Java客户端,并将其称为带有C ++代码参数的命令行。
这并不理想,因为一般来说API更可取,但在这种情况下它可以工作并且是一个非常安全的解决方案。
在C ++中处理Web服务开发的资源称为gSOAP,在此URL:http://gsoap2.sourceforge.net
有什么想法是更好的方法?有没有人使用过gSOAP,如果有的话,你觉得怎么样?
答案 0 :(得分:3)
我用gSOAP做过事,这并不可怕。但是,我越来越反对Web服务的RPC模型;它迫使你进入大量的连接和会话状态,增加了复杂性。 REST接口更简单,更健壮。
答案 1 :(得分:2)
对我来说是Axis C++。
答案 2 :(得分:2)
对于RPC样式,请查看Thrift, 我发现它比肥皂更好(更快,更清晰,更多语言实现)。
答案 3 :(得分:2)
我的同事最终结合使用了Axis2 / java(用于服务)和gsoap用于客户端。他通过从C ++标头生成它来创建wsdl(使用c2wsdl(?)或类似的东西。他说它比使用Java接口更好,因为它产生了两组wsdl,用于单独版本的soap。
然后他使用wsdl2java生成web服务和测试Web客户端。一旦我们开始工作,他就使用gsoap创建了Web客户端(用C ++编写),并且工作正常。
感谢所有答案!我结束了他们的组合。
答案 4 :(得分:1)
我对gsoap有很好的经验 - 非常简单,表现很好。
答案 5 :(得分:1)
如果只能在Windows上运行,则有一个全新的API用于此目的:WWSAPI
答案 6 :(得分:1)
您可以在C app中创建一个java虚拟机,实例化该类并调用任何方法,而不是从命令行调用java客户端。这是java.exe应用程序的功能,我认为源代码包含在jdk中。
答案 7 :(得分:1)
取决于你想要达到的低水平。您可以结帐yield。