때때로 웹 개발이 재밌는 아이디어를 구현하고 안전하게 작동하도록 하기 위해서 새로운 방식으로 사용되던 대략 백만년쯤전의 지식을 살펴보는 것도 재밌습니다.

브라우저의 각각의 window 들은 name 속성을 가지고 있습니다. 팝업을 사용하지 않고 각각의 이름을 통해서 서로 통신하도록 한다면 정말 쓸모없어질 속성입니다.

그런데, Thomas Frank씨가 쿠키에 의존하지 않고 세션 변수를 저장하는데 window.name을 사용하는 작은 라이브러리를 작성했습니다. 그의 연구결과는 window.name에 2MB 정도의 데이터를 저장할 수 있다고 증명하는 것 같습니다. 이 속성이 페이지가 리로드될 때도 사용할 수 있으므로, 일종의 세션이 될 수 있습니다. 하지만 코멘트에는 보안적인 면에서 우려할만한 일도 있음을 시사하고 있습니다:

sessvars에 크로스 도메인 플래그가 있습니다. 기본값이 false이긴 하지만 이것은 단지 실수로 여러분의 sessvars 에서 다른 사이트의 window.name 쓰레기 값을 가져오지 않는 것일 뿐입니다. 여러분이 작성한 실제 데이터는 다른 도메인의 다른 스크립트에 의해 사용될 수 있습니다. 또는 누구라도 브라우저의 주소표시줄에서 javascript:alert(window.name) 만 입력해도 가능합니다.

from What's in window.name from Ajaxian
Posted by 행복한고니 트랙백 0 : 댓글 0

댓글을 달아 주세요