gpt4 book ai didi

c++ - 网络编程: SOAP vs DIY marshalling with XML library?

转载 作者:太空狗 更新时间:2023-10-29 20:01:21 24 4
gpt4 key购买 nike

我知道已经有很多关于 SOAP、膨胀、XML 和替代机制(如 REST)的讨论。

情况是这样的。一位新的团队成员确实基于手工实现协议(protocol)的难度而大谈 SOAP。他推荐 gSOAP(项目全部使用 C++。)他说的是 WSDL 清理大量杂乱的手写 C++ 代码。

现在我正在处理大多数基于 XML 的文本消息和 expat XML 库的网络。因此,我有一些与修改消息格式或添加参数列表相关的编程工作(不多)。在发送端,我打包了一个 XML 请求并通过普通的旧 TCP 套接字发送它。在接收方,我使用 DOM 或 SAX 解析 XML。等等。到目前为止它运行良好。 XML 消息非常紧凑,平均最多只有几百个字符。我理解这些消息中的每一项内容。

我们希望使用 PHP 编码的网站可以访问产品的一部分(服务器)。这在一定程度上插入了这个想法,即 SOAP 接口(interface)对于脚本编写者来说将“更容易”。这个项目中的每个人都相信 SOAP 是他们的救赎。

我认为像 gSOAP 这样的新大型库的引入对成熟项目的发展势头具有极大的破坏性。

我想知道是否有一种不同且更紧凑的方式来执行 SOAP 为我们提供的功能。以及如何平衡 gSOAP 或其他 SOAP 工具的主张,使开发生活更轻松与艰难的现实。

IE,有人告诉我 WSDL 比使用 XML 库手动编写 C++ 代码更好、更容易、更熟练等等。它将 C++ 对象的语义直接放入网络消息的声明中。问题是,我定义的许多 XML 消息不会一对一地映射到接收端的单个不同对象。

或者,我可能什么都不担心。

但是当我浏览这里的消息时,现实似乎与我在本地被告知的相矛盾。

最佳答案

我不买 SOAP 。

Don Box 最初设想的简单对象访问协议(protocol)现在一点也不简单了。它变成了一个臃肿的、由委员会设计的烂摊子。

在臃肿的库中加入所有额外的依赖项,你的手上可能会一团糟。

工具供应商喜欢 SOAP,但我看不出其他人喜欢多少。

关于c++ - 网络编程: SOAP vs DIY marshalling with XML library?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1582790/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com