CI 묻고 답하기

제목 ajax 로 post 데이터 전송시 The action you have requested is not allowed 문제!
카테고리 CI 4 관련
글쓴이 프레드윤 작성시각 2021/04/12 15:54:47
댓글 : 5 추천 : 0 스크랩 : 0 조회수 : 11335   RSS

ajax 로 post 데이터 전송시 The action you have requested is not allowed 오류가 뜹니다.

그러니까 이게 처음에는 제대로 동작이되는데 두번째 세번째 재 요청을 하게되면 문제가 생깁니다.

그래서 아래처럼 처리를 해도 문제 해결이 안됩니다.

Security 클래스 에서 
public $regenerate = false; 
public $redirect = false;

 

X-CSRF-TOKEN 을 메타 태그를 이용해서 ajax 헤더에 받아올때도 아래처럼 해서 했었는데..

(헤더에 메타 토큰 당연히 있구요)

headers: {
    'X-Requested-With': 'XMLHttpRequest',
    'X-CSRF-TOKEN': $('meta[name=X-CSRF-TOKEN]').attr('content')
},

제외시키는거 말고는 다른 방법은 없는건가요? 버그 같아보이는데.. 여러분들은 어떻게 사용하시나요?

 다음글 로그인한 사용자만 파일 다운로드 허용하려면 어느 부분을... (4)
 이전글 코드 이그나이터에서 홈페이지를 제작중에 있는데 외부에서... (2)

댓글

PureAni / 2021/04/12 16:14:42 / 추천 0

csrf 쓰는데, 처음은 잘되고 두번째 세번째는 ajax 가 안된다는거죠???

ajax 보내실때, csrf 토큰은 갱신되고 있나요?

프레드윤 / 2021/04/12 16:36:12 / 추천 0

@퓨어애니 아니요! 방금 갱신 되고 있는지 확인하니까 제대로 안됩니다. 한번 쓴거 그대로 남아있어요 

어떻게 해야하나요?

한대승(불의회상) / 2021/04/12 17:15:34 / 추천 0
쿠키 확인해 보세요.
프레드윤 / 2021/04/12 18:07:17 / 추천 0
@한대승님 쿠키 확인 했는데 쿠키로 어떻게 해야되나요? 
PureAni / 2021/04/13 08:56:39 / 추천 0