![](/img/trans.png)
[英]jquery $.ajax gives 404 not found. Im using node.js with express
[英]Parsing json in node.js server with jquery gives 404 error
我正在使用 node.js 和 socket.io 构建一个简单的 Web 应用程序,这是我第一次使用这种技术。
我有一个发出事件的服务器文件和一个响应的客户端文件,另外还有一个名为 roomParser.js 的文件,用于解析同一文件夹中的 JSON 文件并初始化可用房间。 该文件看起来像这样
let select= document.getElementsByTagName('select')[0];
$.getJSON('rooms.json', function(data) {
alert(data);
});
select.innerHTML="";
/*
for(let i=0; i<rooms.length; i++){
select.innerHTML+="<options value="+rooms[i]+">"+rooms[i]+"</options>";
}*/
即使rooms.json 文件与我的roomParser.js 位于同一文件夹中,我仍然收到404 错误,告诉我该文件尚未找到。
这里还有我的客户端和服务器文件,如果它们在某种程度上有用的话
服务器
const express = require("express");
const app = express();
var server = require('http').createServer(app);
var io=require('socket.io')(server);
var bodyParser = require('body-parser')
var userlist= new Array();
app.use(express.static('public'));
app.use(bodyParser.urlencoded({ extended: false }))
app.get('/', function (req, res) {
res.sendFile(__dirname + '/public/views/index.html');
});
io.on('connection', function(socket){
console.log('user connected')
socket.on('connection tried', function (name) {
if(!find(name)){
userlist.push(name);
socket.broadcast.emit('connection message', name + "has connected");
console.log(name);
}
else
socket.emit('RegistrationErr','username');
})
});
function find(name){
for( let i=0; i<userlist.length; i++){
if(userlist[i]==name)
return true;
}
return false;
}
server.listen(3000);
客户
$(function () {
var socket = io()
$('#formElem').submit(function (e) {
e.preventDefault();
socket.emit('connection tried', $('#name').val());
return false;
})
socket.on('RegistrationErr', function (error) {
console.log(error)
})
});
您应该首先使用 'fs' 读取文件并将 JSON 数据分配给一个变量,然后继续使用它,请参阅: https : //nodejs.org/dist/latest-v6.x/docs/api/fs.html# fs_fs_readfile_file_options_callback
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.