我試圖在控制器中檢索從客戶端(通過ajax)以JSON格式發送的複雜對象,但我不知道如何從params中獲取轉換某些屬性的映射。如何從Grails控制器中的params中獲取映射?
例如,想象這就是「複雜」的JSON對象(在元對象的項目數是可變的,可以是一個,兩個,三個......和變量名):
{
language: "java",
meta: {
category: "category1"
}
}
當這個對象是通過jQuery發送,在控制器我得到這個params對象:
[language:java, meta[category]:category1, action: register, controller: myController]
這就是我如何通過jQuery發送的對象。我有幾個電話一個共同的功能:
if (!params) params = {};
var url = this.urls.base+"/"+controller+"/"+action+"?callback=?";
if (params.callback)
url = this.urls.base+"/"+controller+"/"+action+"?callback="+params.callback;
url = url + "&_"+new Date();
delete params.callback;
$.ajax({
url: url,
data: params,
crossDomain:true,
dataType:'jsonp',
cache:false,
ajaxOptions: {cache: false},
jsonp: params.callback?false:true
});
和params用於在Ajax調用我的測試,我
如果我嘗試做params.meta控制器以前寫的JSON對象發送,我得到一個空對象。 我該如何從params對象中檢索映射?
你怎麼發這個對象,在客戶端? –
看到我編輯的問題 – Eylen