Что такое прокси-сервер разработки?

Dev Proxy — это симулятор API, который помогает легко протестировать приложение за пределами счастливого пути.

Вы протестируете приложение, чтобы убедиться, что оно работает должным образом. Но что делать, если используемые API-интерфейсы дают сбой? Потеряет ли ваше приложение данные клиента? Как протестировать это? Имитация сбоев API является сложной. Вы в конечном итоге пишете код, который не будете отправлять, или, что еще хуже, вообще не тестируете. Поэтому мы создали прокси-сервер разработки, чтобы имитировать ошибки API, чтобы можно было легко протестировать приложение, не изменив код.

С помощью Dev Proxy вы:

Прокси-сервер разработки — это средство командной строки, которое работает на любой платформе. Так как он перехватывает сетевые запросы, он работает с любым типом приложений и стеком технологий. Прокси-сервер разработки — это открытый код и бесплатный для использования.

Для кого предназначен Dev Proxy?

Dev Proxy помогает разработчикам:

  • Создание приложений, вызывающих API-интерфейсы. Проверьте, как приложение обрабатывает ошибки и ограничения скорости из ТАКИх API, как GitHub, OpenAI и Anthropic, не изменяя код.
  • Создание приложений с помощью Microsoft Graph. Получение рекомендаций по разрешениям и лучшим практикам
  • Проектирование API — прототип и макет API перед реализацией
  • Автоматизируйте тестирование — интегрируйте тестирование хаоса в конвейеры CI/CD

Когда следует использовать прокси-сервер разработки

Используйте прокси-сервер разработки, если вам нужно:

  • Тестирование устойчивости API без изменения кода приложения
  • Работа с любым стеком технологий (браузер, Node.js, .NET, Python и т. д.)
  • Имитация сбоев для API, которые вы не управляете
  • Получите рекомендации по лучшим практикам Microsoft Graph
  • Автоматизация тестирования хаоса в конвейерах CI/CD

Рассмотрим другие подходы, когда:

  • Вам нужен только макет в браузере для интерфейсных модульных тестов
  • Вы создаете API и нуждаетесь в тестировании контрактов
  • Необходимо программно изменить тела запросов и ответов (Dev Proxy может сделать это, но специализированные инструменты могут быть проще).

Быстрый старт по сценариям

Выберите путь на основе того, что вы хотите выполнить:

Что вы хотите сделать? Time Guide
Тестируйте мое приложение на обработку ошибок API 5 мин. Тестирование с случайными ошибками
Проверьте, как мое приложение обрабатывает ограничения частоты запросов API GitHub 15 минут Проверка ограничений скорости GitHub API
Проверка, что мое приложение обрабатывает лимиты запросов OpenAI 10 мин. Проверка ограничений скорости OpenAI
Макет API, который еще не существует 10 мин. Имитация API CRUD
Проверка разрешений Microsoft Graph 10 мин. Обнаружение минимальных разрешений
Понять, какие API вызывает мое приложение 5 мин. Поиск URL-адресов для просмотра
Автоматизация тестирования API в CI/CD 15 минут Использование прокси-сервера разработки в CI/CD

Устраните проблему с API

Получили ошибку от API или создаёте ИИ-приложение или агента ИИ? Начните с проблемы:

Попробуйте готовую настройку

Предустановки — это готовые конфигурации Dev Proxy для определенных API. Чтобы узнать, как приложение обрабатывает ограничения скорости и ошибки вызываемого API, начните с установки Dev Proxy.

winget install DevProxy.DevProxy --silent

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

brew tap dotnet/dev-proxy
brew install dev-proxy
bash -c "$(curl -sL https://aka.ms/devproxy/setup.sh)"

Затем скачайте пресет для API.

API Command
GitHub devproxy config get github-rate-limiting
OpenAI devproxy config get openai-throttling
Anthropic devproxy config get anthropic-throttling
Microsoft Graph devproxy config get microsoft-graph-rate-limiting

Запустите прокси-сервер разработки с предустановленным набором. Замените github-rate-limiting предварительно скачанной предустановкой. При первом запуске Dev Proxy необходимо добавить его сертификат в доверенные.

devproxy --config-file "~dataFolder/configs/github-rate-limiting/.devproxy/devproxyrc.json"

Запустите приложение как обычно. Он продолжает вызывать реальные URL-адреса API, а Dev Proxy имитирует ограничения скорости и ошибки API.

Предварительные наборы для других API см. в галерее примеров Dev Proxy.

Как приложение обрабатывает ошибки API?

См. также