こちらの記事を参考にJavascriptでサブドメインの異なるサイト間でクッキーの恭有してみました。
http://d.hatena.ne.jp/dirablue/20090506/1241607961
http://www1.example.com/setCookie.html
- setCookie.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <html> <head> <script type="text/javascript"> function setCookie(id, pass) { var s=setCookieSub("id",id); document.cookie = s; var t=setCookieSub("pass",pass); document.cookie = t; alert(s+"\n"+t); } function setCookieSub(key,val){ var str = escape(key) + "=" + escape(val); str += "; domain=.example.com"; return str; } </script> </head> <body> <input type="button" value="test1-set" onclick="setCookie('012345678901234567890123456789012345678901234567890000','01234567890123456789012345678901234567890123456789AAAA')"> <input type="button" value="test2-set" onclick="setCookie('012345678901234567890123456789012345678901234567891111','01234567890123456789012345678901234567890123456789BBBB')"> </body> </html> |
http://www2.example.com/getCookie.html
- getCookie.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <html> <head> <script type="text/javascript"> function getCookie() { var s="";var t=""; cookies = document.cookie.split("; "); for (i = 0; i < cookies.length; i++) { str = cookies[i].split("="); if (unescape(str[0]) == "id") s="id = "+unescape(str[1]); else if (unescape(str[0]) == "pass") t="pass= "+unescape(str[1]); } return s+"\n"+t; // undefined } </script> </head> <body> <input type="button" value="test1-get" onclick="alert(getCookie())"> </body> |
ポイントはHTMLを設置するパスを同じにすることとdomain指定の前にドットをつけることでしょうか?
あとIDやパスワードをクッキーに保存してはいけません^^);