
โหมด API ของ Rails
แอป API-only, การ render JSON, serializer, CORS, การยืนยันตัวตนด้วย token, การจัดการเวอร์ชัน
1คำสั่งใดที่สร้างแอปพลิเคชัน Rails ใหม่ในโหมด API-only?
คำสั่งใดที่สร้างแอปพลิเคชัน Rails ใหม่ในโหมด API-only?
คำตอบ
แฟล็ก --api เมื่อสร้างแอปพลิเคชัน Rails จะสร้างแอปพลิเคชันขนาดเล็กที่ปรับให้เหมาะกับ API การกำหนดค่านี้จะตัดมิดเดิลแวร์ที่เกี่ยวข้องกับ view (cookies, sessions, flash) ออก ไม่รวม Action View และ Action Cable ตามค่าเริ่มต้น และกำหนดให้ ApplicationController สืบทอดจาก ActionController::API แทนที่จะเป็น ActionController::Base สิ่งนี้ช่วยลดขนาดแอปพลิเคชันและเพิ่มประสิทธิภาพสำหรับกรณีการใช้งานแบบ API ล้วน ๆ
2ในแอปพลิเคชัน Rails API-only นั้น ApplicationController สืบทอดจากคลาสใด?
ในแอปพลิเคชัน Rails API-only นั้น ApplicationController สืบทอดจากคลาสใด?
คำตอบ
ในแอปพลิเคชัน Rails API-only นั้น ApplicationController สืบทอดจาก ActionController::API แทนที่จะเป็น ActionController::Base คลาสนี้เป็นเวอร์ชันขนาดเล็กที่ไม่รวมโมดูลที่เกี่ยวข้องกับการ render HTML, sessions, cookies และ flash messages โดยจะคงไว้เฉพาะฟังก์ชันที่จำเป็นสำหรับ API เช่น routing, พารามิเตอร์, การ render JSON และ callback เท่านั้น สิ่งนี้ทำให้ได้ controller ที่มีประสิทธิภาพสูงขึ้นสำหรับ REST API
3ควรใช้เมธอดใดในการ render การตอบกลับ JSON ใน Rails controller?
ควรใช้เมธอดใดในการ render การตอบกลับ JSON ใน Rails controller?
คำตอบ
เมธอด render พร้อมตัวเลือก json: เป็นวิธีมาตรฐานในการคืนค่า JSON ใน Rails โดยจะแปลงอ็อบเจกต์ที่ส่งเข้ามาเป็น JSON โดยอัตโนมัติผ่านเมธอด to_json คุณสามารถปรับแต่งรหัสสถานะ HTTP ด้วยตัวเลือก status:, ยกเว้นแอตทริบิวต์ หรือใช้ serializer เพื่อการควบคุมที่ละเอียดยิ่งขึ้น แนวทางนี้เรียบง่ายและเพียงพอสำหรับกรณีการใช้งานพื้นฐานส่วนใหญ่
gem ใดที่แนะนำให้ใช้สำหรับการจัดการ CORS (Cross-Origin Resource Sharing) ใน Rails API?
บทบาทของ serializer ใน Rails API คืออะไร?
+17 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Ruby on Rails อื่นๆ
พื้นฐาน Ruby
การเขียนโปรแกรมเชิงวัตถุใน Ruby
พื้นฐาน Rails
Routing & Controllers
พื้นฐาน ActiveRecord
Views และ ERB Templates
การเชื่อมโยงของ ActiveRecord
การสอบถาม ActiveRecord ขั้นสูง
ฟอร์ม Rails
การยืนยันตัวตนและการอนุญาต
Asset Pipeline สมัยใหม่และ frontend
การทดสอบด้วย RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
กลยุทธ์การ Caching
การ Migration ขั้นสูง
Rails Engines และแอปแบบโมดูลาร์
การเพิ่มประสิทธิภาพการทำงาน
Design Patterns ใน Rails
เมตาโปรแกรมมิงใน Ruby
ความปลอดภัยของ Rails
GraphQL กับ Rails
การดีพลอยและโปรดักชัน
Monitoring & Logging
กลยุทธ์การอัปเกรด Rails
เชี่ยวชาญ Ruby on Rails สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี