我试图简单地将ejs变量设置为每秒通过ajax发布请求检索的数据。 (刷新日志)我已经尝试过回调函数,感觉好像我真的很接近,但似乎无法破解它。
下面是JavaScript:
function getResults(callback){
$.ajax({
url: '/resultsRefresh',
type: 'POST',
async: true,
cache: false,
success: callback
})
};
function setResults(result) {
console.log("result: " + result);
document.getElementById("results") = result;
};
window.setInterval(getResults(setResults), 1000);
这是在节点服务器上正在调用的功能:
function readResults(req, res) {
return fs.readFileSync("./temp/results.txt", 'utf8');
}
正在通过
webRouter.post("/resultsRefresh", readResults);
任何帮助/建议将不胜感激。
答案 0 :(得分:2)
在服务器中响应请求时,通常不应该返回值,而是需要调用响应函数。使用express时,res.sendFile
可以达到目的:
function readResults(req, res) {
res.sendFile('./temp/results.txt');
}