我将JSON中的数据发送到服务器,如下所示:
var username = $("#usernameField").val();
var email = $("#emailField").val();
var password = $("#passwordField").val();
var parameters = {
'username':username,
'email':email,
'password':password
};
$.ajax({
type: "POST",
dataType:"JSON",
url: doRegistrationUrl,
data: parameters,
success: function(answer) {
console.log(answer);
}
});
这是获取数据的函数(grails Controller )
def doRegistration() {
def userdata = request.JSON;
printf("DataInController: "+userdata);
render userdata.username;
}
网址
var doRegistrationUrl = '${createLink(action:"doRegistration", controller:"registration")}';
但是,userdata始终为null,数据不会到达服务器。我不明白为什么。有人可以帮忙吗?非常感谢。
最佳答案
您的数据参数只是通过POST发送的普通HTTP请求参数。您可以像处理其他所有 Controller 操作一样处理它。尝试:
def doRegistration() {
def userdata = params
printf("DataInController: "+userdata);
render userdata.username;
}
关于jquery - 服务器端(grails Controller )上的json数据为null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10636001/