API Docs

기존의 Swagger를 사용한 이유는 내가 작성한 코드를 기반으로 자동으로 API를 만들어주는 부분이 너무 편해서 진행하였는데 프로젝트를 진행하다보니, 자동으로 코드를 만들어 준다는 점이 어떻게 보면 단점으로 다가 왔다. 가장 큰 문제점은 코드의 순수성을 해치는 것이 문제였다. Postman은 API 통신 테스트를 하기 위해서만 사용하는줄 알았는데, 2016년쯤 부터 Postman에서 API문서 작업을 지원한다는 것을 알게 되었고 Postman으로 API 문서 작성을 선택하였다. Postman과 Swagger의 차이점 Swagger 코드를 기반으로 자동으로 API문서 생성 개발한 코드를 바탕으로 Swagger UI에서 API 테스트 Postmane API 문서를 작성 후, 코드를 작성 API 명세서로 P..
예시 @swagger_auto_schema( operation_id="구글 로그인 콜백", operation_description="구글에서 반환한 인증 코드를 넣으면, 회원가입 or 로그인 후 서버 토큰 리턴\n" "닉네임이 없으면 message를 True 반환\n" "True면 닉네임, 프로필, 이름, 한줄 소개 업데이트", tags=['소셜 로그인'], manual_parameters=[ openapi.Parameter( 'code', in_=openapi.IN_QUERY, description='구글에서 반환한 인증 코드', type=openapi.TYPE_STRING, required=True, ), ], ) 프로젝트에서 사용한 구글 로그인 인증 코드를 입력하면 로그인 or 회원가입을 진행해주는..
코드 # settings.py # swagger settings SWAGGER_SETTINGS = { "DEFAULT_INFO": "obab.urls.api_info", "USE_SESSION_AUTH": False, "VALIDATOR_URL": None, "SECURITY_DEFINITIONS": { "Bearer": {"type": "apiKey", "name": "Authorization", "in": "header"} }, } 위의 코드는 Django 프로젝트의 설정 파일(settings.py)에서 Swagger 설정을 구성하는 부분입니다. Swagger는 API 문서를 생성하고 제공하는 도구이며, DRF(Django Rest Framework)와 함께 사용되어 API의 사용 방법을 문서화하고 ..
왜 drf-spectacular 인가? 나는 처음 drf doc api를 찾아보면서 drf-yasg와 django-rest-swagger 가 주로 많이 언급 되었었는데 drf-yasg가 특히나 많은 사람들이 사용하는 것 같아서 drf-yasg로 진행하였다. 하지만 사용할 수록 불편함이 많았고 OpenAPI 3.0도 지원하지 않는 다는 것을 알았다. 그래서 찾아 보다가 drf-spectacular를 찾게 되었다. drf-spectacular는 2020년 3월에 첫 릴리즈된 drf의 openAPI 3.0을 지원하는 유일한 오픈소스이다. drf-spectacular의 장점 swagger UI의 버전과 설정값들이 drf-spectacular의 버전에 의존하지 않는다. drf-spectacular는 라이브러리 자..
Swagger은 API개발을 보다 쉽게 관리하고 문서화하는 데 사용되는 프레임 워크로 API를 빠르게 디자인, 빌드, 문서화하고 테스트할 수 있습니다. Swagger 설치 스웨거를 적용하는 패키지는 여러개 있지만 대표적으로 현재까지 잘 작동하는 것은 drf-yasg 패키지입니다. 아래 명령어를 통해서 설치할 수 있습니다. pip install drf-yasg 저는 가상환경(pipenv)에서 진행하기 때문에 아래 명령어로 다운로드하여주었습니다. pipenv install drf-yasg settings.py settings.py파일에 INSTALLED_APP에 drf-yasg를 추가해 줍니다. INSTALLED_APPS = [ ..., 'drf_yasg', ] urls.py urls.py에 swagger ..
Jong_seoung
'API Docs' 카테고리의 글 목록