gpt4 book ai didi

javascript - Node.js 服务器上的 socket.io 出现 ERR_CONNECTION_REFUSED

转载 作者:行者123 更新时间:2023-12-02 16:38:59 24 4
gpt4 key购买 nike

我使用 Node.js 进行了基本的客户端-服务器设置:

服务器

var port = 8000;
var http = require('http');
var express = require('express');
var app = express();
var server = http.createServer(app).listen(port);
var io = require('socket.io').listen(server);

app.use(express.static(__dirname + '/site'));
app.get('/', function(req, res) {
res.sendFile(__dirname + '/site/index.html');
});

server.listen(port, function() {
console.log("Listening on port " + port + "...");
});

io.on('connection', function(socket) {
console.log("A user connected");
});

客户端

var socket = io.connect("http://72.53.66.228:8000");

socket.on('connect', function() {
console.log("Connected.");
});

但是,我不断在浏览器控制台中收到此错误,但我不确定原因:

GET http://72.53.66.228:8000/socket.io/?EIO=3&transport=polling&t=1419738402131-5 net::ERR_CONNECTION_REFUSED

我还应该注意到,我正在运行 Apache Web 服务器,并且我正在使用 ProxyPass 指令来让 Node.js 提供服务 a subdirectory

最佳答案

主要问题是路径。由于 Apache 仅代理/CAH/. 。 。路径。

io.connect("http://72.53.66.228/CAH"); 的麻烦是 socket.io 做了一个“切肉刀”技巧,它将/CAH 解释为房间而不是路径。

解决办法是这样设置路径选项:io.connect({path:'/CAH/socket.io'})这会导致 socket.io 客户端连接到正确的 url。

关于javascript - Node.js 服务器上的 socket.io 出现 ERR_CONNECTION_REFUSED,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27673544/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com