Desarrollo de APIs Restful con Django Rest Framework en Python
Django Rest Framework (DRF) es una poderosa y flexible herramienta para crear APIs Web RESTful en Python. DRF proporciona una serie de características que facilitan el desarrollo de APIs, como la serialización de datos, la autenticación y la autorización.
En este tutorial, aprenderemos a desarrollar una API Restful con Django Rest Framework. Empezaremos creando un proyecto Django básico y luego añadiremos DRF. Una vez que DRF esté instalado, crearemos una serie de vistas para exponer nuestros datos a través de la API.
Prerrequisitos
Para seguir este tutorial, necesitarás tener instalado Python 3 y Django. También necesitarás tener un editor de código o IDE.
Creando un proyecto Django
Para empezar, crearemos un proyecto Django básico.
python -m django startproject my_api
Esto creará un directorio llamado my_api
con los siguientes archivos:
my_api/settings.py
: Configuración del proyecto Django.my_api/urls.py
: URLs del proyecto Django.my_api/wsgi.py
: WSGI del proyecto Django.my_api/app.py
: Aplicación Django.
Instalando Django Rest Framework
Para instalar DRF, ejecutaremos el siguiente comando:
pip install djangorestframework
Una vez que DRF esté instalado, añadiremos la siguiente línea a my_api/settings.py
:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
]
Creando una vista
Una vista es una función que se encarga de procesar las solicitudes HTTP. En DRF, las vistas se definen como clases que heredan de APIView
.
Para crear una vista, crearemos un archivo llamado my_api/views.py
y añadiremos el siguiente código:
from rest_framework.views import APIView
class HelloView(APIView):
def get(self, request):
return Response({'message': 'Hello, world!'})
Esta vista devolverá una respuesta JSON con el mensaje «Hello, world!».
Añadiendo una URL
Para exponer nuestra vista a través de la API, añadiremos una URL a my_api/urls.py
:
from django.contrib import admin
from django.urls import path
from rest_framework.routers import DefaultRouter
from my_api.views import HelloView
router = DefaultRouter()
router.register(r'', HelloView)
urlpatterns = [
path('admin/', admin.site.urls),
path('', include(router.urls)),
]
Esta URL mapeará todas las solicitudes HTTP a la vista HelloView
.
Probando la API
Para probar la API, podemos usar un cliente REST como Postman o Insomnia.
Si hacemos una solicitud GET a la URL /
, recibiremos la siguiente respuesta JSON:
{
"message": "Hello, world!"
}
Conclusión
En este tutorial, hemos aprendido a crear una API Restful con Django Rest Framework en Python. Empezamos creando un proyecto Django básico y luego añadimos DRF. Una vez que DRF estuvo instalado, creamos una serie de vistas para exponer nuestros datos a través de la API.
Para obtener más información sobre Django Rest Framework, consulta la documentación oficial: https://www.django-rest-framework.org/.