เมื่อฉันมีการกระทำเฉพาะที่ฉันไม่ต้องการตรวจสอบโทเค็นของแท้ฉันจะบอก Rails ให้ข้ามการตรวจสอบได้อย่างไร
เมื่อฉันมีการกระทำเฉพาะที่ฉันไม่ต้องการตรวจสอบโทเค็นของแท้ฉันจะบอก Rails ให้ข้ามการตรวจสอบได้อย่างไร
คำตอบ:
ใน Rails 4:
skip_before_action :verify_authenticity_token, except: [:create, :update, :destroy]
และทางรถไฟ 3:
skip_before_filter :verify_authenticity_token
สำหรับรุ่นก่อนหน้า:
สำหรับการกระทำส่วนบุคคลคุณสามารถทำได้:
protect_from_forgery :only => [:update, :destroy, :create]
#or
protect_from_forgery :except => [:update, :destroy, :create]
สำหรับคอนโทรลเลอร์ทั้งหมดคุณสามารถ:
skip_before_action :verify_authenticity_token
skip_forgery_protection
การใช้งาน ดูเอกสาร API
ในRails4คุณใช้skip_before_action
ด้วยหรือexcept
only
class UsersController < ApplicationController
skip_before_action :verify_authenticity_token, only: [:create]
skip_before_action :some_custom_action, except: [:new]
def new
# code
end
def create
# code
end
protected
def some_custom_action
# code
end
end