[rails] InvalidAuthenticityToken 에러 100% 해결법
IT 관련 지식/루비2022. 4. 20. 15:10
반응형
728x170
rails에서 POST형태로 데이터를 보내면 token으로 올바른 페이지에서 보낸건지 확인하는 보안 처리 기능이 있다
이는 특히 form 태그를 사용할 때 많이 발생하는 문제인데
자동으로 token을 넣어서 데이터를 보내주기 때문에 form 헬퍼(form_tag로 된 form 태그)를 사용할 경우
InvalidAuthenticityToken 에러가 발생하지 않아야 한다
그래도 발생하는 경우가 있는데 그럴 경우 아래와 같은 방법을 사용하면된다
1. 해결 방법
app/controllers/application_controller.rb에 들어간다
여기에 다음과 같이 입력한다
protect_from_forgery with: :null_session, if: Proc.new { |c| c.request.format == 'application/json'}
그럼 다음과 같이 된다
이후 다시 POST를 해보면 해결된 것을 알 수 있다
가끔 인터넷을 보면 아래와 같이 그냥 protect_from_forgrey만 있는 걸 알 수 있는데
이거만 있으면 다른 부분이 안되는게 있기 때문에 꼭 내가 추가한 옵션을 넣어주도록 한다
300x250
반응형
'IT 관련 지식 > 루비' 카테고리의 다른 글
[ruby] 다른 디렉토리에 있는 파일(클래스) 사용(require) (0) | 2022.05.05 |
---|---|
[rails6] 루비(rails)를 사용하여 CRUD 실현하기(기초)-2 (0) | 2022.04.16 |
[rails6] 루비(rails)를 사용하여 CRUD 실현하기(기초)-1 (0) | 2022.04.16 |
[rails6] form_tag에서 get형태로 데이터 보내는 방법 (0) | 2022.03.30 |
댓글()