我正在使用dojo xhrPost。我有一个JS对象,我转换为json,然后使用xhrPost发送到Java控制器。如果我在console.log中将内容作为有效的JSON。 Controller类方法参数值看起来像是加密的或其他东西。
(如果有一些语法错误,道歉,我写这个没有我的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”:“name”,“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.
}
任何指针?
由于
答案 0 :(得分:0)
问题是您发送了json,但该方法使用POST /请求数据。如果删除handleAs:,它将适用于
var xhrPost = {
url : urlAddsVariable,
content : { objJson: objJson},
load: function(response){
console.error(reponse);
},
error: function(error){
console.error(error);
}
}