Настройка прокси-сервера разработки
Прокси-сервер разработки — это средство командной строки, которое помогает имитировать поведение и ошибки облачных API для создания устойчивых приложений.
В этом руководстве описано, как установить и запустить прокси-сервер разработки.
Установка прокси-сервера разработки
Самый простой способ установить прокси-сервер разработки — использовать winget. Кроме того, можно вручную установить прокси-сервер разработки.
Чтобы установить прокси-сервер разработки с помощью winget, выполните следующую команду:
winget install Microsoft.DevProxy --silent
Важный
Установщик прокси-сервера разработки добавляет новую запись в PATH. Чтобы использовать прокси-сервер разработки после установки, необходимо перезапустить командную строку, чтобы обновить переменную среды PATH.
Заметка
Чтобы попробовать последние предварительные функции, установите бета-версию прокси-сервера разработки.
Чтобы установить прокси-сервер разработки с помощью winget, выполните следующую команду:
winget install Microsoft.DevProxy.Beta --silent
Чтобы запустить бета-версию прокси разработки, используйте devproxy-beta
Самый простой способ установить прокси-сервер разработки — использовать Homebrew. Кроме того, можно вручную установить прокси-сервер разработки.
Чтобы установить прокси-сервер разработки с помощью Homebrew, выполните следующие команды:
brew tap dotnet/dev-proxy
brew install dev-proxy
Заметка
Чтобы попробовать последние предварительные функции, установите бета-версию Dev Proxy.
Чтобы установить прокси-сервер разработки с помощью Homebrew, выполните следующие команды:
brew tap dotnet/dev-proxy
brew install dev-proxy-beta
Чтобы запустить бета-версию Dev Proxy, используйте devproxy-beta
Самый простой способ установить прокси-сервер разработки — использовать скрипт установки. Кроме того, можно вручную установить прокси-сервер разработки.
Чтобы установить прокси-сервер разработки с помощью скрипта установки, выполните следующие команды:
bash -c "$(curl -sL https://aka.ms/devproxy/setup.sh)"
Если вы используете PowerShell, выполните следующую команду:
(Invoke-WebRequest https://aka.ms/devproxy/setup.ps1).Content | Invoke-Expression
Заметка
Чтобы попробовать последние предварительные функции, установите бета-версию Dev Proxy.
Чтобы установить прокси-сервер разработки с помощью скрипта установки, выполните следующие команды:
bash -c "$(curl -sL https://aka.ms/devproxy/setup-beta.sh)"
Если вы используете PowerShell, выполните следующую команду:
(Invoke-WebRequest https://aka.ms/devproxy/setup-beta.ps1).Content | Invoke-Expression
Чтобы запустить бета-версию прокси для разработки, используйте devproxy-beta
"Запуск прокси-сервера для разработки в первый раз"
При первом запуске прокси-сервера разработки на компьютере необходимо выполнить несколько шагов, чтобы убедиться, что прокси-сервер разработки может перехватывать запросы с компьютера и успешно реагировать. После первого запуска вам не придется повторять эти шаги.
-
запуск прокси-сервера для разработки. Откройте сеанс командной строки. Введите
devproxy
и нажмите ВВОД. -
сертификат доверия. Dev Proxy устанавливает сертификат с именем
Dev Proxy CA
. Отображается предупреждение. ВыберитеYes
, чтобы убедиться, что вы хотите установить сертификат. Прокси-сервер разработки использует этот сертификат для расшифровки трафика HTTPS, отправленного с компьютера. -
Разрешить доступ к брандмауэру. Брандмауэр Windows блокирует прокси-сервер. Отображается предупреждение. Нажмите кнопку
Allow access
, чтобы разрешить трафик через брандмауэр.
-
запуск прокси-сервера разработки. Откройте сеанс командной строки. Введите
devproxy
и нажмите , затем введите. -
сертификат доверия. Dev Proxy устанавливает сертификат с именем
Dev Proxy CA
, который используется для расшифровки HTTPS-трафика, отправленного с вашего компьютера. Показано предупреждение. Нажмите y, чтобы убедиться, что вы хотите доверять сертификату. -
Принять входящие подключения. Отображается предупреждение. Выберите
Allow
для подтверждения.
запуск прокси-сервера разработки. Откройте сеанс командной строки. Введите
devproxy
и нажмите , затем.сертификат доверия. Dev Proxy использует пользовательский SSL-сертификат для расшифровки HTTPS-трафика, отправленного с вашего компьютера.
Важный
Ниже приведены инструкции для Ubuntu. Для других дистрибутивов Linux шаги могут отличаться.
Чтобы установить и доверять сертификату, в новой командной строке выполните следующие команды:
# Export Dev Proxy root certificate openssl pkcs12 -in ~/.config/dev-proxy/rootCert.pfx -clcerts -nokeys -out dev-proxy-ca.crt -passin pass:"" # Install the certificate sudo cp dev-proxy-ca.crt /usr/local/share/ca-certificates/ # Update certificates sudo update-ca-certificates
В командной строке отображаются следующие выходные данные:
info 8 error responses loaded from devproxy-errors.json
info Dev Proxy API listening on http://localhost:8897...
info Dev Proxy Listening on 127.0.0.1:8000...
Hotkeys: issue (w)eb request, (r)ecord, (s)top recording, (c)lear screen
Press CTRL+C to stop Dev Proxy
По умолчанию для прокси-сервера разработки настроено:
- Перехват запросов к любой конечной точке API заполнителя JSON
- Имитация ответов об ошибках API и регулирование API с частотой сбоев в 50%
Убедитесь, что прокси-сервер разработки работает правильно
Прокси-сервер разработки перехватывает запросы, которые приложения на вашем устройстве делают к URL-адресам, зарегистрированным в Dev Proxy. Когда прокси-сервер разработки обнаруживает запрос, он либо передает его в API (не выполняет никаких действий), либо возвращает ответ. Давайте убедимся, что прокси-сервер разработки работает должным образом.
В PowerShell используйте командлет Invoke-WebRequest
для отправки GET-запроса в API JSON Placeholder.
Invoke-WebRequest -Uri https://jsonplaceholder.typicode.com/posts
Если вы используете curl
, отправьте запрос GET в API заполнителя JSON с помощью следующей команды.
curl -ikx http://localhost:8000 https://jsonplaceholder.typicode.com/posts
Вы также можете использовать клиент API, например Postman, для отправки запроса GET в https://jsonplaceholder.typicode.com/posts
.
В командной строке, в которой выполняется прокси-сервер разработки, отображаются сведения о запросе и действии, выполняемом прокси-сервером разработки. По умолчанию Dev-прокси имитирует ответ на ошибку с вероятностью 50%. Если запрос не возвращает ошибку, прокси-сервер разработки пропускает его дальше.
req ╭ GET https://jsonplaceholder.typicode.com/posts
time │ 1/31/2025 12:12:14 PM +00:00
skip │ RetryAfterPlugin: Request not throttled
skip │ GenericRandomErrorPlugin: Pass through
api ╰ Passed through
Если прокси-сервер разработки возвращает ответ на ошибку, в выходных данных отображается сообщение об ошибке.
req ╭ GET https://jsonplaceholder.typicode.com/posts
time │ 1/31/2025 12:12:37 PM +00:00
skip │ RetryAfterPlugin: Request not throttled
oops ╰ 403 Forbidden
Важный
Если в окне командной строки нет выходных данных, скорее всего, прокси-сервер разработки не перехватывает запросы. Ознакомьтесь с разделом о распространённых проблемах для получения помощи.
Безопасно остановить прокси разработки
Если вам больше не требуется запускать прокси-сервер разработки, всегда следует остановить его безопасно.
- Нажмите клавиши CTRL + C, чтобы безопасно остановить прокси-сервер разработки.
Если завершить сеанс командной строки, Dev Proxy не отменяет свою регистрацию в качестве системного прокси-сервера, и у вас могут возникнуть некоторые распространенные проблемы.
Следующий шаг
Узнайте, как настроить прокси-сервер разработки в соответствии с вашими потребностями. Прокси-сервер разработки является очень гибким и поддерживает множество различных сценариев. Узнайте больше о том, как настроить его для конкретного сценария.