EDIT 1:socket.io не может заставить его работать
Ok, проблема с сервером решена. Это полный код сервера, интегрированный в мой проект.
var http = require('http');
var express = require('express');
var requestHandler = require(__dirname + '/app_modules/request-handler.js');
var app = express();
app.configure(function(){
app.use(express.static(__dirname + '/html'));
app.use(express.bodyParser());
});
var httpServer = http.createServer(app);
httpServer.listen(80);
var io = require('socket.io').listen(httpServer);
io.on('connection', function(socket){
socket.on('event', function(data){
});
socket.on('disconnect', function(){
});
});
Следующая проблема включает источник .js на моей статической странице html. Это выдает ошибку:
<script src="/socket.io/socket.io"></script>
Resource interpreted as Script but transferred with MIME type text/plain: "http://localhost/socket.io/socket.io". localhost/:206
Uncaught SyntaxError: Unexpected identifier socket.io:1
Uncaught ReferenceError: io is not defined
ОРИГИНАЛ ПРОБЛЕМА:
Я пытаюсь получить эту присоску работает на тестовом сервере. Это 1: 1, прямо из socket.io docs на github.
var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);
io.on('connection', function(socket){
socket.on('event', function(data){
});
socket.on('disconnect', function(){
});
});
server.listen(3000);
Вот что я получаю:
[INFO] 19:37:40 Restarting
[ERROR] 19:37:40 TypeError
TypeError: object is not a function
at Object.<anonymous> (/Users/me/work/github/node-forever-gui/server/socket_test.js:3:30)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Object..js (/usr/local/lib/node_modules/node-dev/lib/hook.js:52:17)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/usr/local/lib/node_modules/node-dev/lib/wrap.js:47:1)
at Module._compile (module.js:456:26)
Все модули устанавливаются через НПМ. Пожалуйста, помогите мне понять это!
Что находится в строке 3 колонки 30? Это ваш 'полный файл socket_test.js' (верхний блок кода) –
socket_test.js - это первый код, который я опубликовал. –
http://socket.io/ В своем примере они показывают 'require ('socket.io'). Listen (80)' idk, если вы можете объединить узел http-сервера с socket io. Сначала попробуйте 80. –