我有一个完全用 C/C++ 构建的库/API 超过 10 年(在 Linux 下)。现在我想将 API 导出为 Web 服务供其他 Web 项目使用。我搜索网络并缩小到以下 3 个选择:
- 使用 SWIG 将 API 导出为 PHP 或其他脚本/网络基础语言
- 使用 gSOAP 将 API 导出为 SOAP 协议(protocol)
- 将 API 导出为 RESTful 服务(我找不到任何现有的框架,有什么建议吗?)
我想比较一下
- 稳定性
- 易于使用
- 表现
SWIG 似乎很容易使用,我不确定它的稳定性。 gSOAP 看起来非常稳定,但使用和设置有点困难。
有什么建议吗?
最佳答案
我个人用过WSO2-WSF-CPP这是 AXIS2/2 之上的 C++ 层,用于将遗留 C++ 代码导出为 Web 服务。
我当时尝试了 gSOAP,它工作得很好,但出于稳定性和部署的原因,我选择了 WSO2,因为 AXIS2/C 可以轻松部署为众所周知的 Apache2 HTTP 服务器的一个模块。
为了易用性的要求我不知道你是否打算以WSDL文件为模板来生成源代码框架,但是你可以忘记WSO2包的这个特性.. . 它似乎已经被弃用了很长时间,生成的代码太难看,无法手工维护。
不过,根据您拥有的服务的复杂性和数量,自己做一个代码生成器可能是个好主意。我推荐它!我这样做了,现在创建/构建/生成服务非常简单。
关于 WSO2 网络服务的另一件值得注意的事情是,它的构建很简单,开箱即用,并且带有独立的服务器来开发和测试。它非常有用(即使我非常确定任何体面的 Web 服务平台都提供像 gSOAP 那样的这类东西)。
关于c++ - 为我的 c/c++ 库痛饮、soap 或 restful,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6382092/