2013-12-26 3 views
0

Я пытаюсь получить socket.io-client для работы с локальным сервером socket.io на порте 9000. Оба клиента и сервера основаны на NodeJS.Клиент NodeJS Socket.io не работает

Это, кажется, для подключения к серверу:

io = require('socket.io-client') 

socket = io.connect('http://localhost:9000', {resource : 'node_modules/socket.io'}) 

socket.on 'connect', -> 
    socket.emit 'message', {hello: 'world'} 
    return 

Однако это дает следующее сообщение об ошибке:

 self.transport.onClose(); 
       ^
TypeError: Cannot call method 'onClose' of null 

Сервер появляется зарегистрировать запрос правильно:

GET /node_modules/socket.io/1/?t=1388048751499 200 11ms - 2.81kb 

Is есть рабочий пример клиента NodeJS для Socket IO? найдены ссылки:

Uncaught TypeError: Cannot call method 'onClose' of null

+0

Где находится 'self.transport.onClose();' call? – mekwall

+0

Я считаю, что это из модуля socket.io-client. Он кажется довольно стабильным модулем. Не совсем уверен, почему он не работает. Я проверил документацию для конструктора, похоже, что он не работает, должен был пойти в Google для этого слишком lol .. – jhtong

+0

ссылка здесь: https://github.com/LearnBoost/socket.io-client – jhtong

ответ

1

Что. лол. Модуль на NPM нарушен. -.-

Ребята делают прямую тягу от Github -.- Это работает.

npm install git+https://github.com/LearnBoost/socket.io-client.git 

В версии 1.0, это работает для меня (вместе с понга пример ниже)

сервера

var app = require('express')(); 
var server = require('http').Server(app); 
var io = require('socket.io')(server); 
io.on('connection', function(){ // … }); 
server.listen(3000); 

Экспресс работает на Dev порту (для меня, 9000), Socket.io running @ port 3000

Ссылка: http://liamkaufman.com/blog/2012/01/28/testing-socketio-with-mocha-should-and-socketio-client/#trouble-shooting

+1

Это вопрос, как два года назад. Версия NPM работает отлично для меня ('node @ 0.10.24', вот [gist] (https://gist.github.com/robertklep/8c4dc1353f27b109f2b2)). – robertklep

+0

Спасибо! Я построил на вашем, например, и включил v1.0. – jhtong

Смежные вопросы