단기집중과정 101
10 모듈
5 주

멋진

복사하려면 클릭

응용 프로그램 문제 해결을 위해 Swagger 사용


애플리케이션을 테스트하고 디버그하는 데 사용할 수 있는 다음 도구는 Swagger 입니다. 우리는 이미 그것에 대해 더 일찍 알게 되었습니다. 기억하시겠지만, 개발 중인 애플리케이션의 모든 엔드포인트를 보고 실행하고 결과를 얻을 수 있습니다. 이에 대해 더 자세히 살펴보겠습니다.

Swagger 의 권한 부여

우선, 대부분의 엔드포인트에 대한 엔드포인트 액세스를 제어하는 Middleware Token Auth 이 기본적으로 활성화되어 있음을 기억하십시오. 권한이 부여되지 않았거나 전달조차 되지 않았지만 적절한 액세스 권한이 없는 사용자에 대한 액세스를 거부합니다(예: Users 그룹에 속하고 끝점은 Admins 전용).

필요한 인증 토큰은 Developer Tools 를 사용하여 찾을 수 있습니다. 게시된 웹 애플리케이션에 로그인한 다음 요청을 이행하기만 하면 됩니다. 토큰은 Request Headers 에서 사용됩니다. 예를 들어, 국가에 대한 데이터를 얻기 위해 GET 요청을 했을 때 조금 더 높은 스크린샷에서 볼 수 있습니다.

Swagger 에서 직접 가져오는 방법을 살펴보겠습니다. 이렇게 하려면 권한 부여를 담당하는 끝점( Auth 그룹, POST /Auth/ 끝점)을 찾고 " Try it out" 버튼을 클릭합니다. 이 끝점은 두 개의 매개 변수 LoginPassword 를 사용합니다. 이를 지정하고 Execute 을 클릭하여 요청을 보냅니다. 그건 그렇고, 여기에서 Developer Tools 를 사용하는 것도 유용할 수 있습니다. 요청 및 응답에 대한 더 자세한 연구를 위해 이를 열 수 있습니다.


응답은 필요한 토큰과 사용자 및 세션에 대한 자세한 정보를 받습니다.


수신된 응답이 Developer Tools 에서 이미 본 응답과 크게 다르지 않음을 알 수 있습니다. 동시에 Swagger 는 모든 요청을 테스트하고 필요한 매개변수를 사용하여 편리한 형식으로 끝점을 시작할 수 있다는 점에서 부인할 수 없는 이점이 있습니다. 그러나 이러한 테스트를 진행하기 전에 Authorize 를 클릭하고 받은 토큰을 사용하여 승인을 확인합시다.


Swagger 를 사용하여 요청 보내기

이제 Swagger 를 통해 요청을 보내어 인구가 500만 명이 넘고 설명에 " World "라는 단어가 있는 첫 번째 도시에 대한 데이터를 가져오도록 하겠습니다. 이렇게 하려면 GET /city/ 엔드포인트를 열고 필수 매개변수를 입력합니다.

  • _limit = 1 (하나의 도시만 필요)
  • population_from = 5000000 (인구 값을 확인해야 함)
  • _search_in = info ( info 필드에서만 검색)
  • _search = World ( World 단어 찾기 )


수신된 응답은 요청이 올바르게 실행되었음을 보여줍니다. 우리는 그러한 도시 중 하나에 대한 정보를 받았지만( count = 3 , 이는 데이터베이스에 세 개의 적합한 도시에 대한 정보가 포함되어 있음을 의미함) 해당 도시가 위치한 국가( “country”: null )에 대한 데이터는 수신하지 않았기 때문에 쿼리는 관련 테이블의 데이터를 표시할 필요가 없습니다(필요한 경우 _with 매개변수를 사용할 가치가 있음).


Was this article helpful?
아직도 답을 찾고 계십니까?