GET http://localhost/socket.io/?EIO=3&transport=polling&t=LjIvLGU 404 (Not Found)
Solution 1
It seems that you are trying to connect your socket somewhere else over localhost without port 3000. If i test your code snippets everything is OK. Your error message shows me that port 3000 is missing " GET http://localhost/socket.io/?EIO=3&transport=polling&t=LjIvLGU 404 (Not Found)"
.
You can try to connect manually if you change your io.connect to var socket = io.connect('http://localhost:3000');
Solution 2
" GET http://localhost/socket.io/?EIO=3&transport=polling&t=LjIvLGU 404 (Not Found)" means you have socket.io is not listening to your intended server. My mistake was that I instantiated the wrong server object.
In app.js file
var server = app.listen(config.dev.port, () => {
console.log("Listening ..");
});
var io = require('socket.io').listen(server);
Solution 3
After a lot of searching, this works:
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io('http://localhost:3000/');
</script>
Admin
Updated on June 28, 2022Comments
-
Admin almost 2 years
I have a problem with Nodejs and my js code.
When I run the Nodejs in console server does not show any problems, but all time I get an error in the console from Chrome:
GET http://localhost/socket.io/?EIO=3&transport=polling&t=LjIvLGU 404 (Not Found)
index.html
<head> <title>test</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script src="http://localhost:3000/socket.io/socket.io.js"></script> </head>
script.js
var express = require('express'); var app = express(); var server = require('http').Server(app); var io = require('socket.io').listen(server); users = []; connections = []; server.listen(process.env.PORT || 3000); console.log("server up"); app.get('/', function (req, res) { res.sendFile(__dirname + '/index.php'); }); io.sockets.on('connection', function (socket) { socket.on('subscribe', function (data) { socket.join(data.room); }); socket.on('arriv', function (data) { console.log(data); io.sockets.in('invitor').emit('send message',data); }); socket.on('unsubscribe', function (data) { socket.leave(data.room); }); });
user.js
$(function () { var cid = $.session.get('company'); console.log(cid); var socket = io.connect(); socket.emit("subscribe", {room: "invitor"}); socket.on("send message", function (data){ $('#info').append("" + data.gid + "</br>"); }); $(document).on('click', '.123', function () { var gid = $(this).attr('id'); socket.emit('arriv', {gid: gid}); }); });