Ruby on Rails

Modo API de Rails

Apps API-only, renderizado JSON, serializers, CORS, autenticación por token, versionado

20 preguntas de entrevista·
Mid-Level
1

¿Qué comando crea una nueva aplicación Rails en modo API-only?

Respuesta

La opción --api al crear una aplicación Rails genera una aplicación ligera optimizada para APIs. Esta configuración excluye los middlewares relacionados con las vistas (cookies, sessions, flash), no incluye Action View ni Action Cable por defecto, y configura ApplicationController para heredar de ActionController::API en lugar de ActionController::Base. Esto reduce el tamaño de la aplicación y mejora el rendimiento para casos de uso puramente API.

2

¿De qué clase hereda ApplicationController en una aplicación Rails API-only?

Respuesta

En una aplicación Rails API-only, ApplicationController hereda de ActionController::API en lugar de ActionController::Base. Esta clase es una versión ligera que no incluye los módulos relacionados con el renderizado HTML, las sessions, cookies y flash messages. Solo conserva las funcionalidades esenciales para una API como el routing, los parámetros, el renderizado JSON y los callbacks. Esto permite tener controllers más eficientes para las APIs REST.

3

¿Qué método se debe usar para renderizar una respuesta JSON en un controller Rails?

Respuesta

El método render con la opción json: es la forma estándar de devolver JSON en Rails. Convierte automáticamente el objeto pasado a JSON mediante el método to_json. Puedes personalizar el código de estado HTTP con la opción status:, excluir atributos o usar serializers para un control más fino. Este enfoque es simple y suficiente para la mayoría de los casos de uso básicos.

4

¿Qué gem se recomienda para manejar CORS (Cross-Origin Resource Sharing) en una API de Rails?

5

¿Cuál es el rol de un serializer en una API Rails?

+17 preguntas de entrevista

Domina Ruby on Rails para tu próxima entrevista

Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.

Empieza gratis