0

私は道場 xhrPost を使用しています。私はjsonに変換し、xhrPostを使用してJavaコントローラーに送信するJSオブジェクトを持っています。内容を console.log すると、有効な JSON になります。コントローラ クラス メソッドのパラメータ値は、暗号化されているか何かのようです。

(いくつかの構文エラーがある場合、申し訳ありません。IDE なしでこれを書いていますが、ポストはコントローラーに到達します。コンソール エラーはなく、js ファイルで生成された json は有効です。問題は:コントローラーへのルートでjsonを変更していますか?)

..私のjsファイルから

var formValues = dijit.byId('form').get('value');
var obj = {};
obj.attr1 = formValues.name;
obj.attr2 = formValues.address;

var objJson = dojo.fromJson(obj);
consol.log(objJson);

var xhrPost = {
      handleAs: "json",
      url : urlAddsVariable, 
      content : { objJson: objJson},
      load: function(response){
        console.error(reponse);
      },
      error: function(error){
        console.error(error);
      }
}

console.log >>> {"attr1" : "名前", "attr2" = "アドレス値"}

.. Java コントローラ

@RequestMapping("/add.json")
@ResponseBody
public void add(@RequestParam(objJSon) String json) {

// The objJson string has changed.  The attribute names and values are visible but they are wrapped in characters e.g. S%%%%**attr1**DFSS%%%%**name**FSS  etc.
}

ポインタはありますか?

ありがとう

4

1 に答える 1

0

問題は、json を送信することですが、メソッドは POST/リクエスト データを使用します。handleAs: を削除すると、おそらく動作します

var xhrPost = {
   url : urlAddsVariable, 
   content : { objJson: objJson},
   load: function(response){
     console.error(reponse);
   },
   error: function(error){
     console.error(error);
   }
 }
于 2013-04-24T17:36:43.937 に答える