APIGit
2023-05-03
Apigit의 환경은 요청에 사용할 수 있는 다양한 변수 세트를 생성하고 관리할 수 있는 기능입니다. 환경은 Apigit 내에서 액세스하고 수정할 수 있는 키-값 쌍의 모음으로 생각할 수 있습니다.
간단히 말해서 환경은 API 요청에서 자주 사용되는 URL, 액세스 토큰 및 기타 값과 같은 변수를 저장하는 방법입니다. 이러한 값을 환경에 저장하면 매번 값을 수동으로 업데이트하지 않고도 서로 다른 구성 간에 쉽게 전환하고 서로 다른 환경에 대해 요청을 실행할 수 있습니다.
Apigit의 각 환경은 작업 영역의 모든 요청에서 액세스할 수 있는 전역 변수와 해당 환경 내 요청에서만 사용할 수 있는 환경별 변수를 포함하는 변수 집합으로 구성됩니다. 변수는 수동으로 설정 및 업데이트하거나 스크립트 또는 Apigit API를 사용하여 동적으로 설정할 수 있습니다.
Apigit 작업 공간 내에서 여러 환경을 만들고 환경 드롭다운 메뉴를 사용하여 쉽게 전환할 수 있습니다. 이렇게 하면 매번 요청을 수동으로 업데이트하지 않고도 개발, 스테이징 및 프로덕션과 같은 다양한 환경에 대해 API를 쉽게 테스트할 수 있습니다.
API를 디버깅할 때 종종 로컬, 개발 및 프로덕션 환경 간에 전환해야 합니다. 또한 만료된 토큰과 같은 문제에 직면하여 좌절할 수 있습니다. 일부 자습서에서는 Apigit을 사용하여 프로세스를 단순화할 것을 제안하지만 실제로는 여전히 몇 가지 문제가 발생할 수 있습니다. 따라서 이 자세한 블로그 게시물에서는 Apigit의 환경을 사용하여 API를 원활하게 디버깅할 때 서로 다른 환경 간 전환 단계를 단순화하는 방법을 소개합니다.
글로벌 데이터 환경을 사용하는 단계:
테스트 케이스 파일을 편집하려면 다음으로 이동하십시오.Test Cases
리포지토리 내에서 적절한 파일을 선택합니다. 기본 보기 모드에서 사이드바 왼쪽 하단에 있는 ✏️ 아이콘을 클릭합니다.
환경 세트를 추가하거나 편집하려면Env
상단 바 중앙에 위치한 버튼. 여기에서 환경 설정에 액세스하고 필요한 사항을 변경할 수 있습니다.
사이를 전환할 수 있는 옵션이 있습니다.Code
그리고Form
페이지의 오른쪽 상단 모서리에 있는 해당 버튼을 클릭하여 모드를 볼 수 있습니다.
~ 안에Code
방법:
[
{
"type": "code",
"description": "initialization",
"parameters": {
"code": "var baseUrl = env.get(\"baseUrl\");\nvar test = env.get(\"username\");\nif (test == null){\n fail(\"test is null\");\n}\nif (baseUrl == null) {\n state.baseUrl = \"http://petstore.mock.apigit.com\";\n //env.set(\"baseUrl\", \"http://petstore.mock.apigit.com\")\n}\nstate.test = test;\n"
}
},
{
"type": "http",
"description": "get pet inventories by username",
"parameters": {
"method": "get",
"url": "{baseUrl}/store/inventory/{test}",
"query": [],
"auth": {
"type": "{test}"
},
"header": [],
"body": {
"type": "none",
"data": ""
},
"postTest": "if (!res || res.status !== 200) {\n fail(\"get pet inventory failed\")\n}"
}
}
]
~ 안에Form
방법:
환경 데이터를 사용하려면 다음에 코드를 추가할 수 있습니다.Code Execution Action
또는Test
섹션Http Request Action
.
의 사용에 유의하십시오.var
자체 섹션으로 제한됩니다. 다음과 같은 변수를 정의하는 경우test
, 섹션 내Code Execution Action
내에서 사용하고 싶습니다.HTTP Request Action
섹션을 사용해야 합니다.state.test
변수에 액세스합니다.