내가 쿠키를 삭제한다고 가정 (예를 들어, 링의 세션 쿠키) :클로저/링에서 어떻게 쿠키를 삭제합니까?
이 같은 응답지도 만들기 :
{:cookies {"ring-session" {:value "kill", :max-age 1}}}
가 작동하는 것 같다,하지만 조금 해키 느낀다.
그냥 삭제할 수있는 명확한 방법이 있습니까?
내가 쿠키를 삭제한다고 가정 (예를 들어, 링의 세션 쿠키) :클로저/링에서 어떻게 쿠키를 삭제합니까?
이 같은 응답지도 만들기 :
{:cookies {"ring-session" {:value "kill", :max-age 1}}}
가 작동하는 것 같다,하지만 조금 해키 느낀다.
그냥 삭제할 수있는 명확한 방법이 있습니까?
그건 상당히 합리적인 방법 같아 보입니다. Many web a applications 쿠키를 삭제하면 만료 될 쿠키로 바뀝니다. :max-age 1
구문은 예를 들어 Javascript처럼이 모양을 훨씬 더 우아하게 만듭니다.
나는 ring.middleware에서 wrap-session과 다른 핸들러를 사용하고있었습니다. 그것이 바로 덮어 쓰기 된 이후 최대의 나이에 쿠키를 설정 는 응답에서 작동하지 않는
이 내가 할 필요가 무엇인가 (진단에 매우 실망!) :
(defn clear-session! [resp]
(assoc resp :session nil))
ring
은 이것을 지원하지 않지만 사용자 에이전트에 이전 값의 Expires 속성이있는 새로운 쿠키를 보낼 수 있습니다.
0으로 순간 또는 최대 시대의 시작 부분에 쿠키 만료 날짜 중 하나를 설정하면, 심지어 비 링 응용 프로그램에서 쿠키를 삭제하는 표준 방법입니다. – soulcheck
'(defn expire-cookie [resp name] (assoc-in resp [: 쿠키 이름] {: 값 "": 최대 연령 0})) –