BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

微软开源C++ REST SDK——Casablanca

| 作者 Jeff Martin 关注 16 他的粉丝 ,译者 臧秀涛 关注 4 他的粉丝 发布于 2013年3月5日. 估计阅读时间: 2 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

微软的代号为Casablanca的C++ REST SDK已经基于Apache许可证开源。它被描述为“微软为了以原生代码支持基于云的客户端/服务器通信所做的努力,采用了现代异步C++ API设计”。该产品使用C++11实现,微软希望提供一种更简单的编写客户端HTTP代码的方法。

Casablanca支持多个平台,除了Windows 7、Windows 8之外还支持Linux。微软的开发人员Artur Laksberg提到,对WinXP和Vista的支持正在开发之中。该产品的另一个亮点是支持异步操作。微软在公布时提供了一些例子来说明Casablanca的使用,一个是通过HTTP上传文件,一个是JSON对象的创建。

Windows和Linux上的构建版本都支持以下特性:

  • 能够通过HTTP客户端创建到服务器的连接,并能发送请求和处理响应。
  • 支持URI的构建与使用。
  • 能够构建、解析和序列化JSON值。
  • 可以通过流(Stream)和流缓冲(Stream Buffer)对底层介质进行异步的数据读写。

Casablanca中有几种不同的流和流缓冲可供使用:基于内存的生产者/消费者、文件、可以配合STL容器使用的基于内存的流、裸指针流和互操作流。互操作流使得“Casablanca能够提供两组类,一组使用异步流到iostream的接口,另一组使用iostream到异步流的接口”。

Linux HTTP客户端还有些限制,因为它尚不支持HTTPS、代理和认证,但微软介绍说这些特性会包含在未来的版本中。Casablanca的源代码放在了CodePlex上,可以在线查看或通过Git获取,还可以以Zip包形式下载最新的快照版本。

查看英文原文:Casablanca's C++ SDK Whitelisted for Open Source

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT