Cloud and Web Programming in Visual C++

In C++, you have several options for connecting to the web and the cloud.

Windows Azure Mobile Services
Provides native APIs that you can use in Windows Store apps or Windows desktop apps to connect to Windows Azure Mobile Services. Although most of the examples on the website are in C#, you can also use C++. For more information, see Quickstart: Adding a mobile service using C++.

Microsoft Azure Storage Client Library for C++
The Azure Storage Client Library for C++ provides a comprehensive API for working with Azure storage, including but not limited to the following abilities:

  • Create, read, delete, and list blob containers, tables, and queues.
  • Create, read, delete, list and copy blobs plus read and write blob ranges.
  • Insert, delete, replace, merge, and query entities in an Azure table.
  • Enqueue and dequeue messages in an Azure queue.
  • Lazily list containers, blobs, tables, and queues, and lazily query entities

OneDrive API
The OneDrive API provides a set of HTTP services to connect your application to files and folders in Office 365 and SharePoint Server 2016.

C++ REST SDK (Codename "Casablanca")
Provides a modern, cross-platform, asynchronous API for interacting with REST services.

  • Perform REST calls against any HTTP server, with built-in support for JSON document parsing and serialization
  • Supports OAuth 1 and 2, including a local redirect listener
  • Make Websockets connections against remote services
  • A fully asynchronous task API based on PPL, including a built-in threadpool

Supports Windows Desktop (7+), Windows Server (2012+), Universal Windows Platform, Linux, OSX, Android, and iOS.

Windows::Web::Http::HttpClient
A Windows Runtime HTTP client class modeled on the .NET Framework class of the same name in the System.Web namespace. HttpClient fully supports asynchronous upload and download over HTTP, and pipeline filters that enable the insertion of custom HTTP handlers into the pipeline. The Windows SDK includes sample filters for metered networks, OAuth authentication, and more. For apps that target only Universal Windows Platform, we recommend that you use the Windows::Web:HttpClient class.

IXMLHTTPRequest2 interface
Provides a native COM interface that you can use in Windows Store apps or Windows desktop apps to connect to the Internet over HTTP and issue GET, PUT, and other HTTP commands. For more information, see Walkthrough: Connecting Using Tasks and XML HTTP Requests.

Windows Internet (WinInet)
Windows API that you can use in Windows desktop apps to connect to the Internet.

See Also

Visual C++
Connecting to networks and web services (Windows Store apps using C#/VB/C++ and XAML)