阅读更多

2顶
0踩

开源软件

原创新闻 微软开源 C++ REST SDK

2013-02-28 16:04 by 副主编 wangguo 评论(3) 有8787人浏览
微软近日开源了C++ REST SDK,托管在自己的CodePlex平台上。

项目地址:http://casablanca.codeplex.com

C++ REST SDK包含在Casablanca项目中。Casablanca是一个C++本地库,旨在帮助开发者的C++应用程序访问云服务。如果你想编写一个响应式的C++客户端应用程序,或者是一个可扩展的服务端解决方案,可以试试Casablanca。除了C++ REST SDK外,Casablanca项目还包含Azure SDK for C++。

C++ REST SDK中包含了一些工具,可以帮助开发者快速编写现代、异步、可连接REST服务的C++应用程序,遵循C++11标准,目前支持Windows 7、Windows 8(包括Windows Store和桌面应用)和Linux。

该SDK的主要特性包括:

  • 能够通过HTTP Client创建服务器连接,并发送请求、处理响应
  • 支持构造和使用URI(Uniform Resource Identifiers,统一资源标识符)
  • 构造、解析和序列化JSON值
  • 通过Streams和Stream Buffers从底层介质异步读取/写入字节
下面的示例演示了如何上传文件到HTTP服务器:

#include <http_client.h> 
#include<filestream.h> 
#include <uri.h>

using namespace concurrency::streams;
using namespace web::http::client;
using namespace web::http;

int main()
{
  // Open stream to file.
  file_stream<unsigned char>::open_istream(L"myfile.txt").then([](basic_istream<unsigned char> fileStream)
  {
    // Make HTTP request with the file stream as the body.
    http_client client(L"http://www.myhttpserver.com"); 
    client.request(methods::PUT, L"myfile", fileStream).then([fileStream](http_response response)
    {
      fileStream.close();
      // Perform actions here to inspect the HTTP response...
      if(response.status_code() == status_codes::OK)
      {
      }
    });
  });

  return 0;
}


下面的示例演示了如何构建并遍历JSON值:

#include <json.h>

int main()
{
  // Create a JSON object.
  json::value obj;
  obj[L"key1"] = json::value::boolean(false);
  obj[L"key2"] = json::value::number(44);
  obj[L"key3"] = json::value::number(43.6);
  obj[L"key4"] = json::value::string(U("str"));

  // Loop over each element in the object.
  for(auto iter = obj.cbegin(); iter != obj.cend(); ++iter)
  {
    // Make sure to get the value as const reference otherwise you will end up copying
    // the whole JSON value recursively which can be expensive if it is a nested object.
    const json::value &str = iter->first;
    const json::value &v = iter->second;

    // Perform actions here to process each string and value in the JSON object...
    wprintf(L"String:%s", str.as_string());
    wprintf(L"Value:%s", v.to_string());
  }
  return 0;
}

详细信息:The C++ REST SDK ("Casablanca")
2
0
评论 共 3 条 请登录后发表评论
3 楼 wangguo 2013-03-01 09:25
troyconder 写道
上下两段代码一致啊,坑爹

大疏忽,已改
2 楼 troyconder 2013-03-01 09:13
上下两段代码一致啊,坑爹
1 楼 mathgl 2013-02-28 17:20
看起来已经是c++ 11了

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 微软开源C++ REST SDK(Casablanca源代码)

    C++ REST SDK(代号Casablanca)为使用云计算进行软件架构的C++开发者提供最好的支持。   相关资料: http://www.okbase.net/doc/details/3529 http://blog.okbase.net/vchelp/archive/735.html

  • 微软开源网络库:c++REST SDK 编译包

    微软开源网络库:c++REST SDK 编译包,包含:include、lib、dll文件夹,提供x64位debug和release编译结果,开箱即用!可以支持VS2015 / VS2017 / VS2019的使用,自带个人编写的VS示例工程,post/get请求示例。

  • C++ REST SDK的基本用法

    微软开发了一个开源跨平台的http库–C++ REST SDK(http://casablanca.codeplex.com/),又名卡萨布兰卡Casablanca,有个电影也叫这个名字,也许这个库的作者很喜欢这个电影吧。从REST SDK这个名字可以看出它是处理...

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

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

  • C++ REST SDK(Casablanca)

    微软开发了一个开源跨平台的http库--C++ REST SDK,又名卡萨布兰卡Casablanca。由于REST API的请求支持application/x-www-form-urlencoded、application/json、application/octet-stream等多种编码方式,REST API的...

  • linux 编译cpprestsdk,使用微软的 C++ REST SDK

    MSDN官网简介:借助 C++ REST SDK(代号“Casablanca”),您可以更轻松地编写与基于云端的服务相连的新式异步 C++ 代码。...这个微软的开源项目包括在CodePlex中,这个项目同时也利用了C++11中的新特点,...

  • C++ REST SDK

    C++ REST SDK是微软开源的一套客户端-服务器通信库,提供了URI构造/解析,JSON编解码,HTTP客户端、HTTP服务端,WebSocket客户端,流式传输,oAuth验证等C++类,方便C++语言编写的客户端程序访问互联网服务。...

  • VS2013 C++ Rest SDK 环境配置方法

    C++ REST SDK 是 Microsoft 的一个开源跨平台项目( 使用 MIT 开源协议 ), 其使用大量现代异步 C++ API 实现了一个基于 HTTP / HTTPS 协议的 服务端 / 客户端 组件,使用该组件,可以方便地进行高性能RESTful、...

  • VS2013 配置使用微软开源sdk: C++ REST SDK 及运行官方的 JSON例子

    VS2013 配置使用C++ REST SDK 及运行官方的 JSON例子

  • 使用C++ REST SDK开发简单的Web(HTTP)服务

    C++ REST SDK是微软开源的一套客户端-服务器通信库,提供了URI构造/解析,JSON编解码,HTTP客户端、HTTP服务端,WebSocket客户端,流式传输,oAuth验证等C++类,方便C++语言编写的客户端程序访问互联网服务。...

  • 基于vue的菜谱网站,前端采用vue,后端采用express,数据库采用mysql。.zip-毕设&课设&实训&大作业&竞赛&项目

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行,功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

  • 数据分析全流程指南:从基础知识到实战项目的Python&R生态应用

    内容概要:本文档提供了关于数据分析全面的知识介绍与实战资源链接。首先,在数据分析的基础教程部分讲述了使用Python以及R两种语言来进行实际的数据分析工作所需具备的各项基本技能。其次,进阶教程涵盖从机器学习到深度学习的概念及其Python具体应用场景。接着,在工具有效利用层面介绍了多种热门库与平台的作用特点。在项目实践中,列举了四个实战案例:Titanic幸存者预测、房价预测、社交媒体情感倾向分析以及市场顾客购买模式研究,每个项目都有详细的技术流程指引。另外列出多个外部网站资源供进一步提升学习。 适用人群:本文主要面向有志于从事数据挖掘工作的学生和技术爱好者,同时也可辅助在职人士自我能力进阶。无论是在学术科研还是实际业务需求环境中都值得研读。 使用场景及目标:学习者将能够获取到系统的理论知识体系,熟悉业界主流软件包的功能优势,掌握具体业务问题解决方案路径,提高自身的综合技术素质,从而为个人职业规划增添竞争力。 其他说明:文档里推荐了不少高质量参考资料和实用线上学习社区,能有效补充专业知识空白并促进社交协作交流。

  • 从埃安泰国工厂竣工看中国车企加快海外建厂步伐.pptx

    从埃安泰国工厂竣工看中国车企加快海外建厂步伐.pptx

  • 复现改进的L-SHADE差分进化算法求解最优化问题详解:附MATLAB源码与测试函数集,复现改进的L-SHADE差分进化算法求解最优化问题详解:MATLAB源码与测试集全攻略,复现改进的L-SHADE

    复现改进的L-SHADE差分进化算法求解最优化问题详解:附MATLAB源码与测试函数集,复现改进的L-SHADE差分进化算法求解最优化问题详解:MATLAB源码与测试集全攻略,复现改进的L-SHADE差分进化算法求最优化问题 对配套文献所提出的改进的L-SHADE差分进化算法求解最优化问题的的复现,提供完整MATLAB源代码和测试函数集,到手可运行,运行效果如图2所示。 代码所用测试函数集与文献相同:对CEC2014最优化测试函数集中的全部30个函数进行了测试验证,运行结果与文献一致。 ,复现; 改进的L-SHADE差分进化算法; 最优化问题求解; MATLAB源代码; 测试函数集; CEC2014最优化测试函数集,复现改进L-SHADE算法:最优化问题的MATLAB求解与验证

  • DCDC 电阻分压计算器

    可选择参考电压与输出电压 可选择电阻精度以及输出电压误差值

  • 西门子博途三部十层电梯程序案例解析:基于Wincc RT Professional V14及更高版本的应用探索,西门子博途三部十层电梯程序案例解析:基于Wincc RT Professional画面与

    西门子博途三部十层电梯程序案例解析:基于Wincc RT Professional V14及更高版本的应用探索,西门子博途三部十层电梯程序案例解析:基于Wincc RT Professional画面与V14及以上版本技术参考,西门子1200博途三部十层电梯程序案例,加Wincc RT Professional画面三部十层电梯程序,版本V14及以上。 程序仅限于参考资料使用。 ,西门子;1200博途;三部十层电梯程序案例;Wincc RT Professional;V14以上程序版本。,西门子V14+博途三部十层电梯程序案例:Wincc RT Pro专业画面技术解析

  • 2023政务大数据解决方案.pptx

    2023政务大数据解决方案.pptx

  • 基于SSM设计的校园二手物品交易网站

    项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行;功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用

Global site tag (gtag.js) - Google Analytics