http://sites.google.com/site/kanasanjs/javascript-5edition-reading-9
遅くなってしまいましたが、2月13日に読書会の9回目を開催しました。
今回は新スタッフになってから初めての開催でした。
そして、久しぶりの蛍池公民館での開催。
ネットワークはyuyaさんとkazuk_iさんに提供して頂きました。
写真は http://www.flickr.com/photos/tomohiro68/sets/72157623438651792/ で。
内容はクッキーやクライアントサイドの永続化の話から始まり、みんな大好きXHRの話まで。
以下、箇条書きしておきます。
- Cookie
- escape()をIEで使うと文字コードの問題があるため encodeURIComponentを使うべきらしい。
- document.cookie = NAME=VALUE; max-age=SECOND; path=PATH; domain=DOMAIN; secure
- 削除素る場合は max-age=0 にするか、expires=過去の日付 を指定する。
- クッキーは1サーバあたり300個まで、1つは4KBまで。
- クッキーの読み出しはなんで文字列なのか。
- たぶんその当時は文字列文化でった。(そもそもオブジェクトがなかった?)
- IEのuserData: ほとんど使われてない雰囲気
- FlashのSharedObject: たまに使われる。(改変が出来ない)
- http://json-schema.org/ が便利! (yuyaさん)
- 永続化時の生存期間ってどれくらいで運用してるの?
- 結構長い。10年とか。
- XHR
- Webバグ = 見え難くした画像でこれのsrcにパラメータを渡すことで別のサーバにデータを渡せる。
- XMLHttpRequestのXMLは最初はパースしてDOMを返していた名残。(いまも出来るけど誰も使ってない。)
- IE7からはXMLHttpRequest
- 第4引数と第5引数はユーザ名とパスワード
- なくてもFxだとブラウザが聞いてくれるらしい。
var request = new XMLHttpRequest(); request.open('GET', url, false); // 第三引数は非同期にするかどうか。true で非同期 reqeust.setRequestHeader('User-Agent', 'XMLHttpRequest'); rquest.send(null); // 引数はパラメータ。null入れる必要あり。
-
- https://developer.mozilla.org/Ja/Using_XMLHttpRequest
- ちゃんとタイムアウト指定するのか。
- 良く落ちてるサーバとかにアクセスするときは。
- どのくらいの時間?
- 5秒?(5.1秒で帰ってきて、あー><)
- request.abort() で殺せる
- 単一ページアプリケーションは起動用のJavaScriptがXMLHttpRequestで本体を読み込んで起動する。