다음을 통해 공유


개발 프록시 설정

개발자 프록시는 복원력 있는 앱을 빌드하는 데 도움이 되는 클라우드 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

메모

최신 미리 보기 기능을 사용하려면 개발 프록시의 베타 버전을 설치합니다.

Homebrew를 사용하여 개발 프록시를 설치하려면 다음 명령을 실행합니다.

brew tap dotnet/dev-proxy
brew install dev-proxy-beta

개발 프록시의 베타 버전을 실행하려면 devproxy-beta

개발자 프록시를 설치하는 가장 쉬운 방법은 설치 스크립트를 사용하는 것입니다. 또는 개발자 프록시를 수동으로 설치할 수 있습니다.

설치 스크립트를 사용하여 개발자 프록시를 설치하려면 다음 명령을 실행합니다.

bash -c "$(curl -sL https://aka.ms/devproxy/setup.sh)"

PowerShell을 사용하는 경우 다음 명령을 실행합니다.

(Invoke-WebRequest https://aka.ms/devproxy/setup.ps1).Content | Invoke-Expression

메모

최신 미리 보기 기능을 사용하려면 개발 프록시의 베타 버전을 설치합니다.

설치 스크립트를 사용하여 개발자 프록시를 설치하려면 다음 명령을 실행합니다.

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

처음으로 개발 프록시 시작

컴퓨터에서 개발자 프록시를 처음 시작할 때는 개발자 프록시가 컴퓨터의 요청을 가로채고 성공적으로 응답할 수 있도록 몇 가지 단계를 수행해야 합니다. 첫 번째 실행 후에는 이러한 단계를 반복할 필요가 없습니다.

  1. 개발 프록시을 시작합니다. 명령 프롬프트 세션을 엽니다. devproxy을 입력하고 을 누른 후에을 입력합니다.
  2. 신뢰 인증서. 개발자 프록시는 Dev Proxy CA인증서를 설치합니다. 경고가 표시됩니다. Yes 선택하여 인증서를 설치할지 확인합니다. 개발자 프록시는 이 인증서를 사용하여 컴퓨터에서 보낸 HTTPS 트래픽의 암호를 해독합니다.
  3. 방화벽 액세스허용합니다. Windows 방화벽은 프록시를 차단합니다. 경고가 표시됩니다. Allow access 단추를 선택하여 방화벽을 통한 트래픽을 허용합니다.
  1. 개발 프록시시작합니다. 명령 프롬프트 세션을 엽니다. devproxy을 입력하고 을 누른 다음를 입력하십시오.
  2. 인증서. 개발자 프록시는 컴퓨터에서 보낸 HTTPS 트래픽의 암호를 해독하는 데 사용하는 Dev Proxy CA인증서를 설치합니다. 경고가 표시됩니다. y 눌러 인증서를 신뢰할 수 있는지 확인합니다.
  3. 들어오는 연결수락합니다. 경고가 표시됩니다. Allow 선택하여 확인합니다.
  1. 개발 프록시시작합니다. 명령 프롬프트 세션을 엽니다. devproxy을 입력하고 을 누른 후를 입력하세요.

  2. 신뢰 인증서. 개발자 프록시는 사용자 지정 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

기본적으로 개발자 프록시는 다음으로 구성됩니다.

  • 모든 JSON 자리 표시자 API 엔드포인트 요청을 가로채기
  • API 오류 응답과 API 과부하 제한을 실패율 50으로 시뮬레이션합니다%

개발자 프록시가 제대로 작동하는지 확인

Dev Proxy는 사용자의 기기에 있는 애플리케이션이 Dev Proxy에 등록한 URL로 보낸 요청을 가로챕니다. 개발자 프록시가 요청을 감지하면 API에 전달하거나(아무 작업도 수행하지 않음) 응답을 반환합니다. 개발자 프록시가 예상대로 작동하는지 확인해 보겠습니다.

PowerShell에서 Invoke-WebRequest cmdlet을 사용하여 JSON 자리 표시자 API에 GET 요청을 보냅니다.

Invoke-WebRequest -Uri https://jsonplaceholder.typicode.com/posts

curl사용하는 경우 다음 명령을 사용하여 JSON 자리 표시자 API에 GET 요청을 보냅니다.

curl -ikx http://localhost:8000 https://jsonplaceholder.typicode.com/posts

Postman 같은 API 클라이언트를 사용하여 https://jsonplaceholder.typicode.com/postsGET 요청을 보낼 수도 있습니다.

개발 프록시가 실행 중인 명령줄에 요청 및 개발자 프록시가 수행한 작업에 대한 정보가 표시됩니다. 기본적으로 개발자 프록시는 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 눌러 개발 프록시를 안전하게 중지합니다.

명령 프롬프트 세션을 종료하는 경우 개발자 프록시가 시스템 프록시로 올바르게 등록 취소되지 않으며 몇 가지일반적인 문제가 발생할 수 있습니다.

다음 단계

필요에 따라 개발 프록시를 구성하는 방법을 알아봅니다. 개발자 프록시는 매우 유연하며 다양한 시나리오를 지원합니다. 특정 시나리오에 구성하는 방법에 대해 자세히 알아봅니다.