Creando API REST en Python

Creando API REST en Python
La transferencia de estado de descanso o representante es un estilo de desarrollo de software utilizado principalmente en el diseño de interfaz de programación API o de aplicaciones para crear servicios web interactivos y modernos. También se conoce como servicio web RESTFUL.

Python es un poderoso lenguaje de programación. Tiene muchas bibliotecas para construir reposo o apis sestful. Una de las bibliotecas populares para crear aplicaciones web y escribir API de REST es Matraz.

En este artículo, le mostraré cómo crear API REST en Python usando Flask. Empecemos.

Requisitos:

Deberías

  • Python 2 o Python 3 instalado en su computadora.
  • PIP o PIP3 instalado en su computadora.
  • La comprensión básica del lenguaje de programación de Python.
  • La comprensión básica de ejecutar comandos en el shell.

Debería poder encontrar artículos y tutoriales sobre todos estos temas en Linuxhint.comunicarse

Usaré Python 3 en Debian 9 Stretch en este artículo. Si estás usando Python 2, tendrás que ajustar un poco. Deberías poder resolverlo tú mismo, ya que será simple como escribir pitón en lugar de python3 y pepita en lugar de pip3.

Configuración del entorno virtual:

En pocas palabras, el entorno virtual se usa para aislar una aplicación Python de otra. El paquete Python solía hacer eso es virtualenv.

Puedes instalar fácilmente virtualenv Usando PIP en su computadora con el siguiente comando:

$ sudo -h pip3 instalar virtualenv

Ahora cree un directorio de proyecto (llamémoslo Pyrest/) con el siguiente comando:

$ Mkdir Pyrest

Ahora cree un entorno virtual de Python en el Pyrest/ Directorio de proyectos con el siguiente comando:

$ Virtualenv Pyrest/

Ahora navegue al directorio del proyecto con el siguiente comando:

$ CD Pyrest

Luego, active el entorno virtual de Python con el siguiente comando:

$ fuente bin/activar

Finalmente, ejecute el siguiente comando para instalar la biblioteca Flask Python:

Flask de instalación de $ bin/pip3

Escribiendo su primer script frasco:

En esta sección, escribiré un programa Hello World en Python Flask.

Primero, crea un archivo Hola.py En el directorio de su proyecto:

$ touch hola.py

Ahora agregue las siguientes líneas a Hola.py Archivo y guárdelo.

En la siguiente sección, te mostraré cómo ejecutar scripts frascos.

Ejecutar script de frascos:

Ahora para comenzar el Hola.py Servidor Flask, ejecute el siguiente comando:

$ bin/python3 hola.py

Como puede ver, el servidor ha comenzado http: // 127.0.0.1: 8080.

Ahora, puede acceder al servidor Flask http: // 127.0.0.1: 8080 Desde el navegador web o los software de pruebas de API como Postman. Voy a usar curl.

$ curl http: // 127.0.0.1: 8080

Como puede ver, la salida correcta se imprime en la pantalla.

Felicitaciones! Flask está funcionando.

Acceso a los datos utilizando la API REST: REST:

Obtener la solicitud en REST API se utiliza para obtener información del servidor API. Establece algunos puntos finales de API y realiza una solicitud GET en ese punto final. Es sencillo.

Primero, cree un nuevo archivo conseguir.py En su directorio de proyecto con el siguiente comando:

$ touch get.py

Ahora agregue las siguientes líneas en su conseguir.py Archivo y guárdelo.

Aquí, en la línea 1, el Matraz función constructora y jonificar la función se importa del módulo frasco.

En la línea 3, un Matraz el objeto se crea y almacena en aplicación variable.

En la línea 5, creé una matriz de diccionarios de Python de algunos datos ficticios y los almacené en el cuentas variable.

En la línea 10, definí el punto final de la API /Cuentas y el método de solicitud, que es CONSEGUIR.

En la línea 11, definí la función getAccounts (). getAccounts () la función se ejecutará cuando una solicitud obtenga a /Cuentas Se hace un punto final.

Línea 12, que es parte de getAccounts () función, convertí el cuentas variedad de diccionarios a JSON usando jsonify () función y la devolvió.

En la línea 14-15, llamé al aplicación.correr() para decirle a Flask que ejecute el servidor API en el puerto 8080.

Ahora ejecute el servidor API de Flask con el siguiente comando:

$ bin/python3 get.py

El servidor ha comenzado en el puerto 8080.

Ahora haga una solicitud para obtener la solicitud al /Cuentas punto final con curl de la siguiente manera:

$ curl http: // 127.0.0.1: 8080/cuentas

Como puede ver, los datos de las cuentas se muestran como formato JSON en la solicitud GET en /Cuentas punto final.

También puede obtener datos específicos de la cuenta. Para hacer eso, voy a crear otro punto final de la API /cuenta/. Aquí, será la identificación del titular de la cuenta. La identificación aquí es el índice de la matriz.

Editar el conseguir.py script y agréguele las líneas marcadas.

Aquí, en la línea 14, definí el punto final de la API /cuenta/ y el método a utilizar, que es CONSEGUIR.

En la línea 15-17, la función getAccount () para el punto final de la API /cuenta/ se define. El getAccount () la función acepta un identificación como argumento. El valor de desde el punto final de la API se establece en el identificación variable de getAccount () función.

En la línea 16, el identificación La variable se convierte en un entero. También deducí 1 del identificación variable. Porque el índice de matriz comienza desde 0. Quiero comenzar la ID de cuenta desde 1. Entonces, si pongo 1 como la cuenta , 1 - 1 = 0, obtendré el elemento en el índice 0 de la matriz cuentas.

En la línea 17, la matriz en el índice se devuelve como JSON.

El resto de los códigos son los mismos.

Ahora ejecute el servidor API nuevamente.

$ bin/python3 get.py

Solicité datos para la cuenta 1 y 2 por separado y obtuve el resultado esperado como puede ver en la captura de pantalla a continuación.

$ curl http: // 127.0.0.1: 8080/cuenta/1
$ curl http: // 127.0.0.1: 8080/cuenta/2

Agregar datos utilizando POST en REST API:

Ahora voy a cambiar el nombre conseguir.py a API.py y agregue un punto final API /cuenta para agregar nuevos datos.

Rebautizar conseguir.py a API.py:

$ mv -v get.API PY.py

Primero, agregue las líneas (19-26) como se marca en la captura de pantalla a continuación a la API.py archivo.

Ahora corre el API.py servidor:

$ bin/python3 API.py

Para insertar nuevos datos en el /cuenta Endpoint, ejecute el siguiente comando:

$ curl -x post -h "Content -type: Application/JSON" -D '"Nombre": "Shovon", "Balance": 100'
http: // 127.0.0.1: 8080/cuenta

NOTA: Aquí, '"Nombre": "Shovon", "Balance": 100' son los datos de entrada JSON.

Los datos deben insertarse.

Como puede ver, se agregan los nuevos datos.

Entonces eso es todo para este artículo. Gracias por leer este artículo.