Uma maneira ágil de compartilhar e manter os serviços de uma API para diversas equipes é através de uma documentação aberta.
Neste post, quero mostrar como podemos criar documentação de uma API de forma automatizada usando Open API, Redoc e Django Rest Framework, também conhecido como DRF. Para fazer isso, vou usar a biblioteca drf-yasg
1) Instale a biblioteca
pip install drf-yasg
2) Configure o projeto:
Primeiro altere seu settings.py acrescentando o biblioteca.
INSTALLED_APPS = [ ... 'django.contrib.staticfiles', # required for serving swagger ui's css/js files 'drf_yasg', ... ]
Agora basta apenas adicionar essas entradas abaixo no seu arquivo urls.py
... from rest_framework import permissions from drf_yasg.views import get_schema_view from drf_yasg import openapi ... schema_view = get_schema_view( openapi.Info( title="Snippets API", default_version='v1', description="Test description", terms_of_service="https://www.google.com/policies/terms/", contact=openapi.Contact(email="contact@snippets.local"), license=openapi.License(name="BSD License"), ), public=True, permission_classes=[permissions.AllowAny], ) urlpatterns = [ url(r'^swagger(?P\.json|\.yaml)$', schema_view.without_ui(cache_timeout=0), name='schema-json'), url(r'^swagger/$', schema_view.with_ui('swagger', cache_timeout=0), name='schema-swagger-ui'), url(r'^redoc/$', schema_view.with_ui('redoc', cache_timeout=0), name='schema-redoc'), ... ]
É isso, sem mais delongas!
Por favor, se gostou compartilhe com a comunidade essa dica. Que a força esteja com você.
Published Aug 08, 2021 by f0rmig4