我想从我的控制器string response
但我得到下面的错误:爪哇 - 字符串@ResponseBody - 错误200
SyntaxError: Unexpected end of JSON input(…) "Error 200"
当我变成一个布尔值或不同类型的反应,这是工作正常。问题是当我尝试返回一个字符串。
JS代码:
$.ajax({
method: "POST",
url: "./signup",
data: _data,
dataType: "json",
contentType : "application/json;charset=UTF-8",
success : function(data) {
console.log(data)
},
error : function(qXHR, textStatus, errorThrown){
console.log(errorThrown, "Error " + qXHR.status);
}
});
控制器代码:
@RequestMapping(value = "/signup", method = RequestMethod.POST, produces = {"text/plain", "application/*"})
public @ResponseBody String signup(@RequestBody UserSignup details) {
//...
return message;
}
任何想法我怎么能解决这个问题?我已经尝试了一些东西,但没有任何工作。我认为响应格式是错误的,因为代码的期望。
编辑
我已经改变了我的代码(删除produces
),但我仍然得到同样的错误:
SyntaxError: Unexpected end of JSON input(…) "Error 200"
@RequestMapping(value = "/signup", method = RequestMethod.POST)
public @ResponseBody String signup(@RequestBody UserSignup details) {
message = "ok";
}
return message;
}
我曾试图消除''produces'',我试图返回一个字符串,如“OK”和我仍然得到相同的错误。 @cralfaro – gon250
@ gon250你能否用你正在测试的数据更新你的问题?和错误消息?只是为了与您同时更新 – cralfaro
我已经添加了新的代码。基本上我已经删除了产品,并确保我返回一个字符串。 – gon250