【问题标题】:Web Services in C and C++ [closed]C 和 C++ 中的 Web 服务 [关闭]
【发布时间】:2011-09-26 10:14:15
【问题描述】:

我想在现有的 C/C++ 应用程序中托管 Web 服务。最好的解决方案是什么?

我想要一个类似于 JAX-WS 为 Java 所做的解决方案。特别是围绕 SOAP 请求。

对可用解决方案有任何个人经验吗?

【问题讨论】:

  • 您可能已经使用了,但我认为您应该考虑不使用 SOAP 并考虑使用 RESTful 服务。以我的经验,它带来了一个更简洁的架构,而不需要 XML 的繁琐。
  • @dubdubdubdot 您是如何创建 C++ Web 服务的。是多线程还是并行执行。

标签: c++ web-services soap wsdl


【解决方案1】:

据我了解,最流行的免费解决方案是 gSOAP http://gsoap2.sourceforge.net/

【讨论】:

  • 我已经成功地将 gSOAP 用于几个项目。它生成的 API 可能有点难看,但它看起来很稳定,并且能够处理我向它抛出的每一个 Web 服务。
  • @MK 您是如何在 C++ 中创建 Web 服务的。你能指导或给我一些关于它的链接吗?
  • @Mavie 点击链接,它甚至有一个用户指南...请努力,这是值得的
【解决方案2】:

您应该查看来自 Apache 的 Apache Axis。它有一个非常好的 SOAP 实现,绝对有资格成为最好的实现之一。
它是免费和开源的。

另外,看看Axis2/C,它是Axis2架构的C版本,比Axis1灵活得多。

【讨论】:

  • 我喜欢你如何为 Axis2 找到好话
  • Axis2/C 8 年来一直未能提供新版本。也许它没有“死”,但至少它处于昏迷状态。
【解决方案3】:

我在http://www.pion.org/ 测试了 Pion。从其类 pion::net::WebService 派生并创建 HTTP 响应非常容易。

【讨论】:

    【解决方案4】:

    我认为您最好的选择是使用WSO2 Web Services Framework for C++,因为:

    1. It's high-performance
    2. 易于集成
    3. It's easy to use (Quick start guide)
    4. 周围有很多工具:WSDL2CPP(代码生成工具), tcpmon(SOAP 消息查看器)和 WSClient(命令行 Web 服务客户)
    5. 它有机地支持 WS-Security、WS-Security Policy、WS-Secure Conversation 和 WS-Reliable Messaging。
    6. 还有我最喜欢的:使用基于 WSO2 Carbon 的 Web 界面进行运行时管理

    查看更多功能here

    WSO's WSF/C++ 和其他 Web 服务实现之间存在 factual comparison results,它们的结果优于 WSF(性能提高 2-3 倍)。

    WSO2 团队和社区非常活跃,他们提供的技术相互高度集成,并通过开放标准与 3rds 高度集成。 Documentation 和例子很多。

    【讨论】:

      【解决方案5】:

      1.XML-RPC

      2.WWSAPI

      3.WSO2

      第一个看起来不错,虽然我没有经验。

      【讨论】:

        【解决方案6】:

        据我所知,对于 c++ Web 服务,没有好的全面解决方案。 gSoap 运行良好,但它一直由一个人维护,它的原始编码器的整个生命周期(高风险)。 WSO 的 WSF/C++ 很好,但被 WSO 抛弃到 github 上,没有维护者!它多年来没有更新,而当前的“构建”也没有! 如果有人可以向我指出一个高性能的 C++ 宁静的 Web 服务工具包,并且有合理的维护前景。我会很感激的。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-08-14
          • 1970-01-01
          • 1970-01-01
          • 2022-10-14
          • 2017-11-08
          • 1970-01-01
          • 1970-01-01
          • 2013-12-19
          相关资源
          最近更新 更多