在我的express应用程序中,我的根文件app.js在'a'文件夹中呈现a.html但a.html没有响应用ajax.js编写的任何ajax代码。我在下面显示了这些文件 -
app.js
var express = require('express');
var app = express();
app.set(express.static('./a'));
app.get('/', function(req, res) {
res.sendFile(__dirname + '/a/a.html');
});
app.listen(3000, '127.0.0.1');
a.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<button id="button"></button>
<script src="ajax.js"></script>
</body>
</html>
ajax.js
document.getElementById('button').addEventListener('click', trigger);
function trigger() {
var xhr = XMLHttpRequest();
xhr.open('GET', 'blah.txt', true);
xhr.onload = function() {
if (xhr.status == 200) {
console.log(xhr.responseText);
}
}
xhr.send();
}
这里我提供一些目录和结果的截图
答案 0 :(得分:0)
您尝试通过ajax加载的文件是blah.txt
,而a
目录中的文件是blah
没有扩展名,请尝试将其重命名为blah.txt
或从ajax网址中删除.txt
扩展名:
xhr.open('GET', '/blah', true);