AJAX:Getting Startedによると、
POSTでデータを送信する際に、リクエストのMIMEタイプを変更しなければならないそうです。
その際に、
httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
via:AJAX:Getting Started
とこれを入れないと、サーバーはPOSTしたデータを破棄してしまうそうです。
注意しなくては!!
後、データを送信する際に、
ウィリアムのいたずらの開発日記:AJAXでXMLHttpRequestのopenをPOST、sendに内容を送っても送信できない時に書かれていましたが、
msg = "パラメータ名1=" + 値1+ "&パラメータ名2=" + 値2 + ・・・・ "&パラメータ名n=" + 値nと記載して、sendメソッドにmsgを入れてあげれば、データを送信することができます。
また、値が日本語の場合、encodeURIComponentか、encodeURIでエンコード変換が必要
送信先がColdFusionのサーバーだった場合、普通に、パラメータ名1で拾うことができて、url.パラメータ名1だとバグリます。
以上の注意点を踏まえて、POSTした際に処理を書いていきたいと思います。
0 コメント:
コメントを投稿