- 締切済み
Ajaxの非同期通信は、デフォルトのタイムアウトと表現するより、勝手に
Ajaxの非同期通信は、デフォルトのタイムアウトと表現するより、勝手に接続を放棄する時間は規格や各ブラウザで存在するのでしょうか? それともサーバー側のApacheやスクリプト言語(例えばPHP)のみ依存するのでしょうか? Ajaxのタイムアウト関連に詳しい書籍(洋書も可)やサイトを知っている方もお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- think49
- ベストアンサー率59% (285/482)
XMLHttpRequest仕様書としては、このあたりかも。 ------- Not in this Specification ...(中略)... ・Timers have been suggested, perhaps an ontimeout attribute; http://www.w3.org/TR/XMLHttpRequest/#notcovered ------- 「XMLHttpRequest Level 2」では上記が削除されていますね。 XMLHttpRequest Level 2 http://www.w3.org/TR/XMLHttpRequest2/ レスポンスヘッダ [Keep-Alive] (接続的接続) に関しては、この辺りを。 [Studying HTTP] HTTP Header Fields http://www.studyinghttp.net/header#Connection [Studying HTTP] Persistent Connections http://www.studyinghttp.net/connections
- yyr446
- ベストアンサー率65% (870/1330)
接続を放棄する時間は規格や各ブラウザで存在するのでしょうか? ==>規格については、W3Cの規格 http://www.w3.org/TR/XMLHttpRequest/ を見ても見当たらないです。(見落としてるかも) ブラウザーの設定だと、 Firefoxの場合は、アドレス欄に about:config と入力すると各種設定値 の確認・変更が出来ます(むやみに変更すると危険かも) この中で、 network.http.keep-alive.timeout;115 ってのが、タイムアウトの秒数だと思います。 IEの場合はレジストリーエディターで、 HKEY_CURRENT_USER→Software→Microsoft→Windows→CurrentVersion→Internet Settings を開いて、keep-aliveのキー値を10進秒数で確認・設定できます。 一方、Webサーバー側にも当然keep-aliveの設定があり、レスポンスヘッダーで 返されてますよね。 Webサーバー側でどこに設定されていて、どうやって変えるかは、 Webサーバーの種類や管理ツールによって異なるから、keep-aliveを検索ワード にして検索してみれば見つかると思います。(他のブラウザーの場合も) I