
Режим API Rails
Застосунки API-only, рендеринг JSON, серіалізатори, CORS, автентифікація за токеном, версіонування
1Яка команда створює новий застосунок Rails у режимі API-only?
Яка команда створює новий застосунок Rails у режимі API-only?
Відповідь
Прапорець --api під час створення застосунку Rails генерує полегшений застосунок, оптимізований для API. Ця конфігурація виключає пов'язані з view middleware (cookies, sessions, flash), за замовчуванням не містить Action View і Action Cable та налаштовує ApplicationController на успадкування від ActionController::API замість ActionController::Base. Це зменшує розмір застосунку та підвищує продуктивність для суто API-сценаріїв.
2Від якого класу успадковує ApplicationController у застосунку Rails API-only?
Від якого класу успадковує ApplicationController у застосунку Rails API-only?
Відповідь
У застосунку Rails API-only ApplicationController успадковує від ActionController::API замість ActionController::Base. Цей клас є полегшеною версією, яка не містить модулів, пов'язаних з рендерингом HTML, sessions, cookies та flash-повідомленнями. Він зберігає лише необхідну для API функціональність, як-от routing, параметри, рендеринг JSON та callback. Це дозволяє створювати продуктивніші controller для REST API.
3Який метод слід використовувати для рендерингу JSON-відповіді в контролері Rails?
Який метод слід використовувати для рендерингу JSON-відповіді в контролері Rails?
Відповідь
Метод render з опцією json: — це стандартний спосіб повертати JSON у Rails. Він автоматично перетворює переданий об'єкт у JSON за допомогою методу to_json. Ви можете налаштувати код статусу HTTP за допомогою опції status:, виключити атрибути або використати серіалізатори для тоншого контролю. Цей підхід простий і достатній для більшості базових сценаріїв.
Який gem рекомендується для обробки CORS (Cross-Origin Resource Sharing) у Rails API?
Яка роль serializer у Rails API?
+17 питань зі співбесід
Інші теми співбесід Ruby on Rails
Основи Ruby
Об'єктно-орієнтоване програмування в Ruby
Основи Rails
Routing & Controllers
Основи ActiveRecord
Views та шаблони ERB
Асоціації ActiveRecord
Розширені запити ActiveRecord
Форми Rails
Автентифікація та авторизація
Сучасний Asset Pipeline та frontend
Тестування з RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
Стратегії кешування
Розширені міграції
Rails Engines та модульні застосунки
Оптимізація продуктивності
Патерни проєктування Rails
Метапрограмування в Ruby
Безпека Rails
GraphQL із Rails
Розгортання та Продакшн
Monitoring & Logging
Стратегії оновлення Rails
Опануй Ruby on Rails для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно