Ajax.RequestのmethodがOPTIONに変わる
Ajaxでサーバから受け取れる文字列を表示しようとしたんだけど、なかなかうまくいきませんでした
リクエストは送られてるのに、画面がなにも変化しない…おっかしぃな~
そしてサーバーのログにGETとかPOSTとか表示される箇所に、OPTIONって表示されてる…何?これ?
どうも、違うサーバに非同期通信を行おうとすると、GETメソッドもPOSTメソッドも、OPTIONメソッドに変わるらしい
最初にHTMLを表示したアドレスと、違うサーバのアドレスとみなされると、メソッドがOPTIONに変わって非同期通信で取得できないらしい
今回発生したときは、最初にHTMLを表示したアドレスが、
file:///C:/test.html
とういうようになっていた。
そして、非同期通信するアドレスは、同じパソコンの中のファイルなのだが、
http://localhost/data.cgi
とまったく違うアドレスだった
前半のアドレスを同じくすると成功した
http://localhost/test.html
と、最初に表示するときのアドレスの、前半の「http://localhost/」を同じアドレスにするとうまくいきました
サーバーアドレスの「localhost」や、
プロトコルの「http://」が、
変更になるとAjax.Requestで非同期できません。
これはjavascriptのXMLHttpRequestを使ってるため、prototype.jsのAjax.Requestだけでなく、XMLHttpRequestを使った通信は全て同様の制限があります。
« ドリームハンター麗夢とリリカルなのは | トップページ | 藤原々々アートワークスWater Sprite »
「パソコン・インターネット」カテゴリの記事
- テキストボックスにはname属性をつけましょう(2013.04.19)
- javaでFTP転送(2011.11.21)
- java dom4jを使ってみた(2011.11.20)
- sqlplusをサイレントモードで実行したらフリーズしてた(2011.11.20)
- シェル内でFTPコマンド使うときのエラー処理につまづいた(2011.11.20)
こうさぎは、リクエスト表示しなかった?
投稿: BlogPetのこうさぎ | 2010年7月26日 (月) 15時16分