Я использую node.js и socket.io для создания простого веб-приложения. Впервые я использую такую технологию.
У меня есть события, генерирующие файл сервера, и ответ клиента, плюс У меня есть файл с именем 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)
})
});