API vs API REST

Oct 30 2020

Recientemente publiqué esta pregunta: ¿ API de descanso para múltiples aplicaciones?

Después de buscar un poco más y leer esta pregunta https://stackoverflow.com/questions/41189842/what-is-difference-between-rest-and-api, Quiero preguntar cómo debo elegir entre una API REST y una API que no es REST.

¿Por qué debería preferir un estilo sobre el otro?

Pregunto si hay una respuesta general, pero también daré un ejemplo específico.

Entiendo que tanto una API REST como una API no REST pueden ser utilizadas por múltiples aplicaciones (aplicación para PC, aplicación para Android, aplicación web, etc.). Si quiero crear el back-end que compartirán todas estas aplicaciones (aplicación de PC, aplicación de Android, aplicación web, etc.), de modo que todas estas aplicaciones intercambien información con el back-end y el back-end almacenará toda esta información. , ¿hay alguna diferencia en el estilo de API que elijo?

Incluso si no hay diferencia, ¿cuál debería elegir y por qué?

Respuestas

AdarshMenon Oct 30 2020 at 12:25

REST es un tipo de API. No todas las API son REST, pero todos los servicios REST son API.

API es un término muy amplio. Por lo general, es la forma en que un código se comunica con otro. En el desarrollo web, la API a menudo se refiere a la forma en que recuperamos información de un servicio en línea. La documentación de la API le brindará una lista de URL, parámetros de consulta y otra información sobre cómo realizar una solicitud desde la API, y le informará qué tipo de respuesta se dará para cada consulta.

REST es un conjunto de reglas / estándares / pautas sobre cómo construir una API web. Dado que hay muchas formas de hacerlo, tener un sistema acordado para estructurar una API ahorra tiempo en la toma de decisiones al construir una y ahorra tiempo en entender cómo usar una.

Otros paradigmas de API populares incluyen SOAP y GraphQL.