Node.js 带套接字的Websocket.io&;有棱角的

Node.js 带套接字的Websocket.io&;有棱角的,node.js,socket.io,Node.js,Socket.io,我想创建一个websocket,在angular应用程序和数据库之间添加通信。应用程序应能够将问题保存在数据库中,并在有人回答时通知用户 不幸的是,我尝试了一些教程,但都不起作用。我对这个完全陌生,因为我通常使用apache。因此,如果你知道一个“工作”,非常基本的(初学者)教程,它不需要安装很多额外的东西,如约曼等。我会很高兴 在当前教程中,我收到错误消息: You are trying to attach socket.io to an express request handler fun

我想创建一个websocket,在angular应用程序和数据库之间添加通信。应用程序应能够将问题保存在数据库中,并在有人回答时通知用户

不幸的是,我尝试了一些教程,但都不起作用。我对这个完全陌生,因为我通常使用apache。因此,如果你知道一个“工作”,非常基本的(初学者)教程,它不需要安装很多额外的东西,如约曼等。我会很高兴

在当前教程中,我收到错误消息:

You are trying to attach socket.io to an express request handler function. Please pass a http.Server instance.
My server.js:

var connect = require('connect'),
    serveStatic = require('serve-static'),
    socket = require('socket.io');

var server = connect();

server.use(serveStatic(__dirname+'/../client'));
server.listen(8080);
var io = socket.listen(server);
console.log("Server started and listen to http://127.0.0.1:8080");
没有

var io = socket.listen(server);
它为我的静态页面服务


此错误在我的另一种方法上:

has no method 'use'
myserver.js

var connect = require('connect');
var http = require('http');
var serveStatic = require('serve-static');
var app = connect();
var server = http.createServer(app).use(serveStatic(__dirname+'/../client')).listen(3000);

var socket = require('socket.io');
var io = socket.listen(server);

和往常一样,如果你挣扎很长时间,解决方案会在发布后很快出现。一开始就有效:

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

var app = connect();

var fs = require('fs');
var index = fs.readFileSync(__dirname+'/../client/index.html');
var server = http.createServer(function(req, res){

        // Send HTML headers and message
        res.writeHead(200,{ 'Content-Type': 'text/html' });
        res.end(index);
}).listen(3000);

var socket = require('socket.io');
var io = socket.listen(server);