node.js - socketio 和 nodejs,错误 404/socket.io/socket.io.js

标签 node.js express socket.io pug

我收到此错误“NetworkError: 404 Not Found - http://localhost:3000/socket.io/socket.io.js”,我不知道如何才能修理它。我试过更改端口,添加与端口的链接......但我不知道。

我的 app.js :

var express = require('express')
  , http = require('http')
  , stylus = require('stylus')
  , nib = require('nib')


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


function compile(str, path) {
  return stylus(str)
    .set('filename', path)
    .use(nib());
}

app.set('views', __dirname + '/views')
app.set('view engine', 'jade')
app.use(express.logger('dev'))
app.use(stylus.middleware(
  { src: __dirname + '/public'
  , compile: compile
  }
))
app.use(express.static(__dirname + '/public'))

app.get('/', function (req, res) {
  res.render('index',
  { title : 'Home' }
  )
})

app.listen(3000)

注意:控制台说没问题(信息 - socket.io 已启动)

反正我试过了

app.listen(app.get('port'), function(){
   console.log("Express server listening on port " + app.get('port'));
});

但不打印端口,说我未定义

最佳答案

您正在创建一个快速 HTTP 服务器以及一个标准 HTTP 服务器。上面示例中的应用程序指的是没有 .get('port'); 的 Express 应用程序。方法,尝试使用 server.listen。例如:

var express = require('express');
var http = require('http');

var app = express();
var server = http.createServer(app);

app.get('/', function(req, res) {
    res.send("Hello World!");
});

server.listen(3000);
console.log('Express server started on port %s', server.address().port);

关于node.js - socketio 和 nodejs,错误 404/socket.io/socket.io.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17734009/

相关文章:

node.js - 插入 JSON 变量

node.js - npm ELIFECYCLE 错误退出状态 1

node.js - Express.js : naive technical inquiry

python套接字错误: AF_INET address must be tuple,不是str

javascript - 使用正则表达式在 javascript 中将每个出现的链接替换为其特定的 href 对象( map 链接 -> a href=link)

node.js - 如何连接到moto独立服务器?

javascript - Jade 模板没有正确使用 bootstrap css

node.js - Node-acl 方法 "isAllowed"总是意外返回 false

javascript - 使用外部 Node 脚本连接到已在index.js中定义的socket-io

javascript - 通过 socket.io 与 heroku 应用程序进行通信