Список примеров веб-API

Примеры HttpClient

Пример перевода Bing | VS 2012 source

Показывает, как вызвать службу Microsoft Translator с помощью класса HttpClient . ДЛЯ API службы Microsoft Translator требуется маркер OAuth, который приложение получает, отправляя запрос на сервер токенов Azure для каждого запроса в службу переводчика. Результат от сервера токенов включается в запрос, который отправляется в службу перевода. Перед выполнением этого примера необходимо получить ключ приложения из Azure Marketplace и заполнить сведения в примере класса AccessTokenMessageHandler.

Пример | Google Mapsподробное описание | Источник VS 2012

Использует HttpClient для скачивания карты Redmond, WA из API Google Maps, сохраняет его в виде локального файла и открывает средство просмотра изображений по умолчанию.

Пример клиента Twitter | подробное описание | Источник VS 2012

Показывает, как написать простой клиент Twitter с помощью HttpClient. В примере используется httpMessageHandler для вставки сведений о проверке подлинности OAuth в исходящий httpRequestMessage. Результат из Twitter считывается с помощью JSON.NET. Перед выполнением этого примера необходимо получить ключ приложения из Twitter и заполнить сведения в примере класса OAuthMessageHandler.

Пример Всемирного Банка | подробное описание | Источник | Источник VS 2012

Показывает, как получить данные с сайта данных Всемирного банка, используя JSON.NET для анализа результата.

Примеры веб-API

Начало работы с ASP.NET веб-API | Источник VS 2012

Показывает, как создать базовый веб-API, поддерживающий HTTP-запросы GET. Содержит исходный код для руководства Ваше первое веб-API ASP.NET.

сценарии JavaScript для веб-API ASP.NET — комментарии | Источник VS 2012

Показывает, как использовать веб-API ASP.NET для создания веб-API, которые поддерживают клиенты браузера и могут легко вызываться с помощью jQuery.

Диспетчер контактов | Источник VS 2010

В этом примере используется веб-API ASP.NET для создания простого приложения диспетчера контактов. Приложение состоит из веб-API диспетчера контактов, который используется приложением MVC ASP.NET и приложением Windows Phone для отображения списка контактов и управления ими.

Пример пакетной обработки | подробное описание | Исходный код VS 2012

Показывает, как реализовать пакетную обработку HTTP в ASP.NET. Пакетная обработка состоит из размещения нескольких HTTP-запросов в одном теле многопартийной сущности MIME, которая затем отправляется на сервер в виде HTTP POST. Запросы обрабатываются по отдельности, а ответы помещаются в другую сущность MIME с несколькими частями, которая возвращается клиенту.

Пример контроллера содержимого | подробное описание | Источник VS 2010 | Источник VS 2012

Показывает, как асинхронно читать и записывать сущности запроса и ответа с помощью потоков. Образец контроллера имеет два действия: действие PUT, которое считывает тело сущности запроса асинхронно и сохраняет его в локальном файле, а также действие GET, которое возвращает содержимое локального файла.

Пример | Источник VS 2012

Показывает, как изменить ASP.NET веб-API для поддержки обнаружения контроллеров из динамической загруженной сборки библиотеки. В примере реализован пользовательский интерфейс IAssembliesResolver , который вызывает реализацию по умолчанию, а затем добавляет сборку библиотеки в результаты по умолчанию.

Пример форматировщика типа пользовательского носителя | подробное описание | Источник VS 2010

Показывает, как создать пользовательский модуль форматирования типов мультимедиа с помощью базового класса BufferedMediaTypeFormatter . Этот базовый класс предназначен для форматировщиков, которые в основном используют синхронные операции чтения и записи. Помимо отображения средства форматирования типов мультимедиа, в примере показано, как подключить его, зарегистрируя его как часть HttpConfiguration для приложения. Обратите внимание, что базовый класс MediaTypeFormatter также можно использовать напрямую для форматировщиков, которые в основном используют асинхронные операции чтения и записи.

Пример пользовательской привязки параметровподробное описаниеИсточник VS 2010

Показывает, как настроить процесс привязки параметров, который определяет, как информация из запроса привязана к параметрам действия. В этом примере контроллер home имеет четыре действия:

  1. BindPrincipal показывает, как привязать параметр IPrincipal из пользовательского универсального субъекта, а не из сообщения HTTP GET;
  2. BindCustomComplexTypeFromUriOrBody показывает, как привязать параметр сложного типа, который может поступать из текста сообщения или из URI запроса сообщения HTTP POST;
  3. BindCustomComplexTypeFromUriWithRenamedProperty показывает, как привязать параметр сложного типа с переименованным свойством, поступающим из URI запроса сообщения HTTP POST;
  4. PostMultipleParametersFromBody показывает, как привязать несколько параметров из текста сообщения POST;

Пример отправки | файловподробное описание | Источник VS 2012

Показывает, как отправлять файлы в ApiController с помощью многопартийной отправки файлов MIME и как настроить уведомления о ходе выполнения с помощью HttpClient с помощью ProgressNotificationHandler. Контроллер считывает содержимое HTML-файла, передаваемого асинхронно, и записывает одну или несколько частей текста в локальный файл. Ответ содержит сведения о отправленного файла (или файлах).

Загрузка файлов в Хранилище BLOB-объектов Azure - пример | детальное описание | Исходный код VS 2012

Этот пример аналогичен примеру отправки файлов, но вместо сохранения отправленных файлов на локальном диске он асинхронно отправляет файлы в Хранилище BLOB-объектов Azure с помощью Windows Azure SDK для .NET. Он также предоставляет механизм для перечисления BLOB-объектов, присутствующих в контейнере хранилища BLOB Azure. Вы можете попробовать образец, работающий с Эмулятором хранилища Azure, который поставляется с Azure SDK. Если у вас есть учетная запись Azure Storage, вы также можете работать с реальной службой хранилища.

Пример | подробное описание | Источник VS 2010

Показывает, как подключить экземпляры HttpMessageHandler как к клиенту (HttpClient), так и к серверу (ASP.NET веб-API). В примере один и тот же обработчик используется как на клиенте, так и на сервере. Хотя редко случается, что тот же обработчик работает в обоих местах, объектная модель одинакова на стороне клиента и сервера.

Пример загрузки JSON | Источник: VS 2012

Показывает, как отправлять и скачивать JSON в ApiController и из него. В примере используется минимальный ApiController и он обращается к нему с помощью HttpClient.

Пример Mashup | подробное описание | Исходные данные из VS 2012

Показывает, как асинхронно получить доступ к нескольким удаленным сайтам в действии ApiController . При каждом нажатии действия запросы выполняются асинхронно, чтобы потоки не блокировались.

Пример трассировки памяти | подробное описание | Исходный код VS 2010

Этот пример проекта создает пакет Nuget, который будет устанавливать пользовательский модуль записи трассировки в памяти в приложения ASP.NET Web API.

Пример | подробное описание | Источник VS 2012

Показывает, как использовать MongoDB в качестве постоянного хранилища для ApiController, используя шаблон репозитория.

Пример | Источник VS 2012

Показывает, как скопировать сущность ответа (т. е. текст ответа HTTP) в локальный файл, прежде чем он передается клиенту, и выполнять дополнительную обработку в этом файле асинхронно. В примере реализуется HttpMessageHandler, который оборачивает сущность ответа, записывая её как в стандартный вывод, так и в локальный файл.

Отправка примера | подробное описание | Источник VS 2012

Показывает, как отправить XDocument в ApiController с помощью PushStreamContent и HttpClient.

Проверочный пример | Источник VS 2010

Показывает, как использовать атрибуты проверки в моделях в ASP.NET WebAPI для проверки содержимого HTTP-запроса. Демонстрируется, как пометить свойства как обязательные, использовать как предопределённые платформой, так и пользовательские атрибуты проверки для аннотирования вашей модели, а также как возвращать сообщения об ошибках для недопустимых состояний модели.

Пример | подробное описание | Источник VS 2010

Отображает ApiController, добавленный в проект Web Forms.

Пример RestBugs

RestBugs — это простое приложение отслеживания ошибок, показывающее, как использовать веб-API ASP.NET и новую клиентную библиотеку HTTP для создания системы, управляемой гипермедией. Этот пример включает как клиентские, так и серверные реализации, используя веб-API ASP.NET. Сервер использует пользовательский модуль форматирования Razor для создания представлений ресурсов. В этом примере также представлен сервер node.js, чтобы продемонстрировать преимущества, которые обеспечивает использование гипермедийного дизайна для разделения клиентов и серверов.