Una interfaz de programa de aplicación (API) es un conjunto de definiciones y protocolos que permite que los programas de software se comuniquen entre sí.
El término REST significa transferencia de estado representacional. Es un estilo arquitectónico que consiste en un conjunto de restricciones que se utilizarán al crear servicios web.
RESTful API es una API que sigue la arquitectura REST. Por lo general, las API REST usan el protocolo HTTP para enviar y recuperar datos y respuestas con formato JSON. Puede usar los métodos HTTP estándar para crear, ver, actualizar o eliminar recursos a través de la API.
Para probar e interactuar con las API RESTful, puede usar cualquier biblioteca o herramienta que pueda realizar solicitudes HTTP.
Las solicitudes de API se componen de cuatro partes diferentes:
- El punto final. Esta es la URL que el cliente usa para comunicarse con el servidor.
- El método HTTP. Le dice al servidor qué acción quiere realizar el cliente. Los métodos más comunes son
GETPOSTPUTDELETEyPATCH - Los encabezados. Se utiliza para pasar información adicional entre el servidor y el cliente, como la autorización.
- El cuerpo. Los datos enviados al servidor.
En este artículo, vamos a discutir cómo usar curlpara interactuar con las API RESTful. curles una utilidad de línea de comandos para transferir datos desde o hacia un servidor remoto. Se instala de forma predeterminada en macOS y en la mayoría de las distribuciones de Linux.
Opciones de rizo
La sintaxis del comando es la siguiente:curl
curl [options] [URL...]
Estas son las opciones que usaremos al realizar solicitudes:
-X,--request- El método HTTP a utilizar.-i,--include- Incluir los encabezados de respuesta.-d,--data- Los datos a enviar.-H,--header- Cabecera adicional a enviar.
OBTENER HTTP
El método GET solicita un recurso específico del servidor.
GET es el método predeterminado cuando se realizan solicitudes HTTP con curl. Este es un ejemplo de cómo realizar una solicitud GET a la API JSONPlaceholder a una representación JSON de todas las publicaciones:
curl https://jsonplaceholder.typicode.com/postsPara filtrar los resultados, use los parámetros de consulta:
curl https://jsonplaceholder.typicode.com/posts?userId=1PUBLICACIÓN HTTP
El método POST se utiliza para crear un recurso en el servidor. Si el recurso existe, se anula.
El siguiente comando realiza una solicitud POST utilizando los datos especificados con la -dopción:
curl -X POST -d "userId=5&title=Hello World&body=Post body." https://jsonplaceholder.typicode.com/postsEl tipo del cuerpo de la solicitud se especifica mediante el Content-Typeencabezado. Por defecto cuando no se le da curluso a este encabezado Content-Type: application/x-www-form-urlencoded.
Para enviar datos con formato JSON, establezca el tipo de cuerpo en application/json:
curl -X POST -H "Content-Type: application/json" \-d '{"userId": 5, "title": "Hello World", "body": "Post body."}' \https://jsonplaceholder.typicode.com/posts
HTTP PUT
El método PUT se usa para actualizar o reemplazar un recurso en el servidor. Reemplaza todos los datos del recurso especificado con los datos de la solicitud.
curl -X PUT -d "userId=5&title=Hello World&body=Post body." https://jsonplaceholder.typicode.com/posts/5PARCHE HTTP
El método PUT se utiliza para realizar actualizaciones parciales del recurso en el servidor.
curl -X PUT -d "title=Hello Universe" https://jsonplaceholder.typicode.com/posts/5ELIMINAR HTTP
El método DELETE elimina el recurso especificado del servidor.
curl -X DELETE https://jsonplaceholder.typicode.com/posts/5Autenticación
Si el extremo de la API requiere autenticación, deberá obtener una clave de acceso. De lo contrario, el servidor API responderá con el mensaje de respuesta "Acceso prohibido" o "No autorizado".
El proceso de obtención de una clave de acceso depende de la API que esté utilizando. Una vez que tengas tu token de acceso puedes enviarlo en el encabezado:
curl -X GET -H "Authorization: Bearer {ACCESS_TOKEN}" "https://api.server.io/posts"Conclusión
Le mostramos cómo utilizar curlpara realizar solicitudes de API de prueba. Para obtener más información acerca de curl, visite la página de documentación de Curl .
Si tiene alguna pregunta o comentario, no dude en dejar un comentario.

0 Comentarios