2014-09-26 2 views
1

Laravel에서 모든 쿠키 (물론 모든 웹 응용 프로그램 용)를 잊어 버리는 방법이 있는지 아는 사람 있습니까? Cookie::forget('mycookie')을 수행하여 하나를 제거 할 수 있다는 것을 알고 있지만, 12 개 정도 있다면 어떻게 되나요? 모두 잊고 싶습니다.laravel의 모든 쿠키를 잊어 버리는 방법?

Cookie::forgetAll()과 같은 단순한 한 줄 명령이 있습니까? 아니면 모든 쿠키를 반복하여 하나씩 잊어 버리면됩니까?

감사합니다.

PS - 저는 Laravel 4.1.28을 사용하고 있습니다 만, 차이가 있다면 기꺼이 최신 버전으로 업데이트 할 것입니다.

답변

2

Laravel 소스 코드 (https://github.com/laravel/framework/blob/ef0864242e6e6f19a78f941b0710c844016ddf6e/src/Illuminate/Cookie/CookieJar.php)를 보면 한 번에 모든 쿠키를 삭제할 수있는 기능이없는 것 같습니다. 따라서 모든 쿠키를 반복하여 하나씩 삭제할 수있는 유일한 옵션입니다 . 당신은 간단하게 할 수있는 한 번에 여러 쿠키를 삭제하는

+0

입니다. 그러한 삶은 - 나는 단지 반복해야 할 것 같다. 답변 해주셔서 감사합니다. –

4

다음 물론 당신은 루프에 넣어 수 : 이렇게

Cookie::queue(Cookie::forget('key1')); 
Cookie::queue(Cookie::forget('key2')); 
return $myResponse; 

, 쿠키 객체를 사용하여 응답을 반환 할 필요도 없다 더 이상.

queue() 메서드는 쿠키를 사용하여 결과를 대기열에 추가 한 다음 요청 헤더에 추가합니다. 쿠키를 만들거나 삭제하는 것은 중요하지 않습니다. 어느 쪽이든 작동합니다!

또한 여기이 게시물을 체크 아웃 : JP Camarahttps://coderwall.com/p/3etfgw/deleting-cookies-in-laravel

감사와 같은 훌륭한 게시물에 대한.

관련 문제