activeUsers.getUsers()
会在我的应用中返回包含在线用户的列表。
我想在我的HTML中显示它,但我不知道如何做到这一点。我在我的ajax请求上收到错误404但是如果我在控制器中放置一个断点,它会显示在线用户列表。
任何帮助??
控制器
@RequestMapping(value = "/loggedUsers", method = RequestMethod.GET)
public String getLoggedUsers(Model model) {
model.addAttribute("loggedUsers", activeUsers.getUsers());
return "loggedUsers";
}
AJAX
$(document).ready(function () {
//get loggedUsers
$.ajax({
url: '/loggedUsers',
type: 'get',
success: function (loggedUsers) {
console.log(loggedUsers);
}
});
});
HTML
<div id="sidebar-right" class="visible">
<ul class="sidebar-nav">
<li id="dashboard">
<a href="dashboard">
<c:forEach var="loggedUser" items="${loggedUsers}">
<span class="menu-title">${loggedUser}</span>
</c:forEach>
</a>
</li>
</ul>
控制台日志返回:
错误404
答案 0 :(得分:1)
添加@Response
正文。您需要使其成为REST API,因为它是AJAX调用。
@RequestMapping(value = "/loggedUsers", method = RequestMethod.GET)
public @ResponseBody String getLoggedUsers(Model model) {
model.addAttribute("loggedUsers", activeUsers.getUsers());
return "loggedUsers";
}
答案 1 :(得分:0)
更改您的控制器并在其上方添加@ResponseBody
注释。您的代码应该是
@RequestMapping(value = "/loggedUsers", method = RequestMethod.GET)
@ResponseBody
public String getLoggedUsers(Model model) {
model.addAttribute("loggedUsers", activeUsers.getUsers());
return "loggedUsers";
}
这将仅返回内容,并且不会查找jsp
。 (你得到404
)的原因