java Spring控制器向ajax请求返回视图或空字符串
我发出一个ajax请求,有两种情况,如果一切正常,我返回一个页面,该页面将以模式呈现,否则返回空字符串,并且根本不显示任何模式
下面是我的控制器应该是什么样子的示例:
@PostMapping(value = "/path")
public String serve(final Model model)
{
if (everything_fine)
{
return "path_to_page_which_will_be_handled_by_view_controller";
}
return StringUtils.EMPTY;
}
ajax请求是这样的:
$.ajax({
type: 'POST',
url: '/path',
error: function (data) {
//handle error
},
success: function (data) {
if (data) {
// render response in modal
} else {
// show some other stuff
}
}
});
对于返回jsp的情况,请求工作正常,当返回空字符串时,我得到404,ajax请求在完成时进入错误分支。我猜这是因为view controller没有为返回的空字符串找到任何视图,您知道如何完成我的场景吗
# 1 楼答案
最终将其分为两个请求,一个请求获取决定是否显示模态的数据,最后请求模态内容(如果需要)
# 2 楼答案
你试图返回浏览器的空路径,结果得到404。这很正常。 尝试返回带有返回空页的控制器路径的字符串: