最近、私は、クロスドメインの投稿要求を行うために、jQueryの$.ajax
の代わりにeasyXDMを使用する必要があることに気付きました。easyXDMでAJAXポストを介してキーと値のペアとしてJavaScriptオブジェクト/配列を送信するにはどうすればよいですか?
のjQuery:取得した後easyXDMは、私は機能がかなり密接に並んでいることがわかり設定
$.ajax({
url: "/ajax/",
method: "POST",
data: myData
});
easyXDM:
xhr.request({
url: "/ajax/",
method: "POST",
dataType: 'json', // I added this trying to fix the problem, didn't work
data: myData
});
MYDATAは、セットアップのようなもの:
myData = {};
myData[1] = 'hello';
myData[2] = 'goodbye';
myData[3] = {};
myData[3][1] = 'sub1';
myData[3][2] = 'sub2';
myData[3][3] = 'sub3';
jQueryでリクエストを行うと、サブフィールドは正しく処理されますが、easyXDMでは正しく処理されません。
screenshot-with-shadow.png http://img37.imageshack.us/img37/4526/screenshotwithshadow.png
そして、ここではそれがeasyXDMとしています方法です:
screenshot-with-shadow.png http://img204.imageshack.us/img204/4526/screenshotwithshadow.png
私は送ることができますどのようにここで
はPOSTリクエストがjQueryを使ってサーバーに入ってくる方法ですjavascriptオブジェクト/ jQueryのようなeasyXDM/XHRリクエストを介してキーと値のペアの配列ですか?
ドキュメントから:あなたはシリアライザを上書きされない限り、あなたが期待するよう、あなたのオブジェクトが出てくる必要がありますので、「設定されていない場合はeasyXDMは、ネイティブJSONオブジェクトを使用しようとしますか」?おそらく、あなたの前のコードのどこかでタイプ強制が起こっていますか? – robC
これはeasyXDMの問題かもしれないようです。 cors/index.htmlファイルのように見えますが、データが既に文字列かどうかを確認せずにデータをシリアル化し、マルチレベルのJSONエンコーディングを処理していないようです... https:// github。 – cwd
@robC - あなたの今削除されたコメントに関して、easyXDMの問題だと思う - 私のテストhttp://pastebin.com/0eusK2vrを参照してください。 – cwd