我正在尝试在HTML页面上连续显示文件的内容 (每X次)。换句话说,我想制作一个记录器并将其可视化,就好像它在终端中一样。我是AJAX的新手,我不确定如何在javascript中设置ajax调用,更确切地说,是哪个URL通过参数传递。
我正在通过控制器将模型传递给百里香中的表单:
<form id="formTest" class="form-inline" action="#" th:action="@{'log/'}" th:object="${log}" method="post">
...
</form>
这样,我可以创建一个对象,然后打印其内容。对象的内容来自文件* .log *,该文件位于远程目录中。
<p th:utext="${log.content}">Log content</p>
文件路径已映射到控制器中
@RequestMapping(value = "/log", method = RequestMethod.POST)
public String logContent_post(@Valid Log log, BindingResult bindingResult, Map<String, Object> model) {
if (log.getInitLine() == 0 && log.getFinalLine() == 0) {
try {
fileNumberLines(log);
// lineOccurrence, firstLine, lastLine, logPath
log.setContent(getLogContentByRange(0, log.getInitLine(), log.getFinalLine(), logsDir + "/" + log.getFilename()));
} catch (IOException e) {
logger.error(e.getMessage());
}
} else {
log.setContent(
getLogContentByRange(0, log.getInitLine(), log.getFinalLine(), logsDir + "/" + log.getFilename()));
}
model.put("path", logsDir);
model.put("log", log);
model.put("currentPage", "logs");
model.put("root", root);
return "log";
}
我的Ajax函数
function att(){
$.ajax({
type : 'POST',
url : '',
cache: false,
success : function(data) {
console.log("Content:" + data);
},
complete : function() {
}
});
}
setInterval(function() {
if (window.location.pathname == '/log/') {
att();
}
}, 5000);
我试图通过AJAX传递几个“ URL”,但是我得到404()或null作为返回。所以我的问题:我应该通过参数传递哪些网址?