如何在 C++ 中调用休息服务?

发布于 2024-12-17 15:10:26 字数 244 浏览 0 评论 0原文

我想从我的 C++ 应用程序调用用 WCF 编写的休息服务(它可以支持 XML 和 JSON Web 消息格式)。

实现这一目标的最佳解决方案是什么?我见过一些实用程序(gsoap),它们为您创建用于调用 Web 服务的代理类。

我可以在不使用任何中间实用程序的情况下实现相同的功能吗?由于它是一个休息服务,并且它使用基本 HTTP 函数 GET/PUT 函数工作,是否有任何 C++ 库/解决方案可用于直接从 C++ 应用程序调用这些函数?

I want to call a rest service written in WCF (which can support both XML and JSON Web Message Formats) from my C++ application.

What is the best solution to achieve this ? I have seen some utilities (gsoap) which create proxy classes for you to be used to call web services.

Can I achieve the same functionality without using any intermediate utility ? As its a rest service and it works using GET/PUT functions which are basic HTTP functions, is there any C++ library/Solution which could be used to invoke these function directly from a c++ application ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

完美的未来在梦里 2024-12-24 15:10:26

在 Linux 上,您可能可以使用 curl 库(我猜它已移植到 Windows)。 Curl 是一个为 C 或 C++ 程序提供 HTTP 客户端功能的库。

On Linux, you probably could use curl library (and I guess it is ported to Windows). Curl is a library providing HTTP client functionality to a C or C++ program.

小姐丶请自重 2024-12-24 15:10:26

使用卡萨布兰卡。这对于 2013 年寻找这个答案的人来说应该会有帮助。CURL 是完全合适的,但如果你在 Windows 中做 C++ 并使用 MS 的东西,Casablanca 似乎很合适。

Use Casablanca. This should be helpful for people looking for this answer in 2013. CURL is perfectly appropriate but if you're doing C++ in Windows and using MS stuff, Casablanca seems fit.

2024-12-24 15:10:26

我自己尝试过 gsoap,但维护我的应用程序的跨平台版本变得很困难。
相反,我选择了 HTTP 请求路线。
对于跨平台和 C++,我发现了这个 Call Rest Web Services from C++

I tried gsoap myself but it became difficult to maintain cross platform versions of my app.
Instead i went the HTTP request route.
For cross platform and C++ i found this Call Rest Web Services from C++

荒人说梦 2024-12-24 15:10:26

如果确实不需要使用 REST 方法进行 XML 序列化,那么使用 curl 是完美的选择。但是,如果您想要在 C 或 C++ 中进行类型安全的 XML 序列化,那么使用curl会变得很麻烦,因为您必须使用在curl之上运行的东西来处理XML,例如使用DOM解析器(速度慢且不适合类型)安全的)。如果您有 WSDL,那么我推荐 gSOAP 2.8,它提供集成的 REST 和 XML 序列化功能(以及 JSON,当您需要时)。

If XML serialization with your REST approach is really not needed then curl is perfect to use. However, if you want type-safe XML serialization in C or C++ then it would become cumbersome to use curl, since you will have to use something that runs on top of curl to process XML such as with a DOM parser (slow and not type safe). If you have a WSDL, then I recommend gSOAP 2.8 which provides integrated REST and XML serialization capabilities (and JSON when you need it).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文