<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en-us" xmlns="http://www.w3.org/2005/Atom"><title>Simon Willison's Weblog: crossdomainstorage</title><link href="http://simonwillison.net/" rel="alternate"/><link href="http://simonwillison.net/tags/crossdomainstorage.atom" rel="self"/><id>http://simonwillison.net/</id><updated>2008-05-13T21:59:39+00:00</updated><author><name>Simon Willison</name></author><entry><title>Session variables without cookies</title><link href="https://simonwillison.net/2008/May/13/session/#atom-tag" rel="alternate"/><published>2008-05-13T21:59:39+00:00</published><updated>2008-05-13T21:59:39+00:00</updated><id>https://simonwillison.net/2008/May/13/session/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.thomasfrank.se/sessionvars.html"&gt;Session variables without cookies&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Brilliant but terrifying hack—you can store up to 2 MB of data in window.name and it persists between multiple pages, even across domains. Doesn’t work with new tabs though, and storing JSON in it and eval()ing it is a bad idea—a malicious site could populate it before sending the user to you.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/crossdomainstorage"&gt;crossdomainstorage&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/json"&gt;json&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/security"&gt;security&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/sessions"&gt;sessions&lt;/a&gt;&lt;/p&gt;



</summary><category term="crossdomainstorage"/><category term="javascript"/><category term="json"/><category term="security"/><category term="sessions"/></entry></feed>