VS Code용 REST 확장을 사용하여 Azure API 호출

4384 단어 apivscoderestazure
환상적인 VS Code용 REST 클라이언트는 자신의 것이든 타사든 REST API로 작업을 수행할 때 인기 있고 유용한 도구입니다. 이 확장을 사용하면 .http 또는 .rest 파일에서 일련의 HTTP 호출을 정의할 수 있습니다. 지원하는 기능 목록이 인상적입니다. 변수를 사용하고 호출을 함께 연결하고 재사용 및 다시 참조하거나 코드와 함께 배포할 수 있는 API 호출의 참조 세트를 구축할 수 있습니다.

여기에서 확장 프로그램 받기
https://marketplace.visualstudio.com/items?itemName=humao.rest-client


화차오 / vscode-restclient


Visual Studio Code용 REST 클라이언트 확장




설정 및 사전 요구 사항



Azure API를 호출할 때 분명히 인증이 필요합니다. 간단히 말해서 이는 액세스 토큰을 얻는 것을 의미합니다.

Azure service principal plus the 'non-interactive flow' to request a token인 등록된 클라이언트를 사용하는 일반적인 인증 시나리오를 사용합니다.

REST 확장은 이 토큰을 얻는 데 도움이 될 수 있습니다. 예.

먼저 service principal을 만들고 사용하려는 permissions to the Azure subscription을 지정합니다.
.env 파일을 만들고 여기에 서비스 주체 세부 정보를 배치하면 소스 제어에서 비밀을 유지할 수 있습니다(물론 .gitignore에는 .env가 포함되어 있습니다).

AZURE_SUBSCRIPTION_ID="__YOUR_SUBSCRIPTION_ID__"
AZURE_TENANT_ID="__YOUR_TENANT_ID_ID__"
AZURE_CLIENT_ID"=__YOUR_CLIENT_ID__"
AZURE_CLIENT_SECRET="__YOUR_CLIENT_SECRET__"


액세스 토큰 요청



VS Code에서 임의의 이름으로 새 파일을 생성하지만 파일 확장자로 .http 또는 .rest가 있어야 합니다(예: azure-api.rest ) 이 파일 확장자는 VS Code용 REST 확장을 활성화합니다.

다음 내용을 붙여넣기

### Get access token to call Azure ARM API
# @name getToken 
POST https://login.microsoftonline.com/{{$dotenv %AZURE_TENANT_ID}}/oauth2/token
Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials
&resource=https://management.azure.com/
&client_id={{$dotenv %AZURE_CLIENT_ID}}
&client_secret={{$dotenv %AZURE_CLIENT_SECRET}}

### Capture access token from getToken request
@authToken = {{getToken.response.body.access_token}}

{{$dotenv %FOO}} 구문은 .env 파일에서 변수에 액세스하기 위한 REST 확장 기능의 일부입니다.

"요청 보내기"옵션이 POST 문 위에 표시되어야 합니다. 요청을 클릭하면 액세스 토큰(및 기타 세부 정보)이 포함된 응답이 포함된 창 팝업이 표시됩니다.

후속 요청에서 사용할 수 있도록 HTTP 결과의 access_token을 authToken 변수에 저장합니다.

Azure API 호출



이제 파일에 더 많은 요청을 추가하고 액세스 토큰을 사용하여 Azure API를 호출하도록 설정되었습니다.

예를 들어 모든 리소스 그룹을 나열하려면 위의 코드 뒤에 다음을 붙여넣습니다. 메모. 3개의 해시###로 시작하는 주석 줄이 중요하며 REST 확장이 요청을 구분하는 데 사용합니다. authToken 변수 값을 Authorization 헤더에 연결하여 요청을 승인합니다.

### List all storage accounts for subscription
GET https://management.azure.com/subscriptions/{{$dotenv %AZURE_SUBSCRIPTION_ID}}/providers/Microsoft.Storage/storageAccounts?api-version=2019-06-01
Authorization: Bearer {{authToken}}


다시 한 번, GET 바로 위의 "요청 보내기"를 누르면 Azure에서 모든 리소스 그룹을 나열하는 응답을 받아야 합니다. 정돈된!

요약



VS Code용 REST 클라이언트는 인증을 통해 Azure API를 간단하고 재사용 가능한 작업으로 호출합니다. 그런 다음 해당 API를 호출하면 IDE를 종료하지 않고도 쉽게 설정할 수 있습니다.

좋은 웹페이지 즐겨찾기