질문
1주차 Day 2 쿠키와 세션, 웹 스토리지 파트 Set-Cookie의 Expires 와 Max-Age의 차이에 관련해서 질문 드립니다! 두 옵션에 대해서 알아보던중 Max-Age가 새롭게 생겨진 옵션인 것을 알게 되었는데, 이미 있는 기능이 왜 추가되었는지 그 이유가 궁금합니다.
- Expires라는 옵션이 존재함에도 불구하고 Max-Age가 사용되어지는 이유가 있을까요?
- Expires는 date값으로 전송되어지기 때문에 형식변환 과정이 번거로워서일까요?
- 혹여 서버-클라이언트 간의 시간 차이에 따른 오류가 나서일까요? Expires의 date값은 서버가 아닌 클라이언트 기준의 GMT를 따르는 것으로 알고있습니다. 그렇다면 이러한 오류는 발생하지 않을것으로 보이는데 그러한지 궁금합니다.
- 현업에서는 Set-Cookie를 사용할때 두 옵션중 어떤것을 주로 사용하는 편인가요?
- IE8까지는 Max-Age가 지원하지 않음으로 Expires를 많이 쓰지 않을까.. 생각하고있습니다.
답변
그것은 브라우저 싸움에 개발자 등이 터져나갔기 때문입니다. 브라우저마다 지원하는 스펙이 달라서 결국 지금의 형태가 되었습니다. https://meetup.toast.com/posts/209 이 문서를 한 번 읽어보세요. 😄