Подтвердить что ты не робот

Ошибка: не удается найти модуль 'socket.io'

[~]# node node.js

Error: Cannot find module 'socket.io'

[~]# node -v
v0.10.10

socket.io установлен:

npm install socket.io

npm WARN package.json [email protected] No repository field.
npm WARN package.json [email protected] 'repositories' (plural) Not supported.
npm WARN package.json Please pick one as the 'repository' field
4b9b3361

Ответ 1

Похоже, вы установили socket.io в другое место в ваш текущий путь. Либо установите глобально, как показано ниже:

npm install -g socket.io

Или укажите местоположение, на которое вы установили:

var io = require('../lib/socket.io');

Ответ 2

Спасибо ajtrichards!

Просто добавьте ответ - если вы просто используете

sudo npm install socket.io

Путь установки будет

/home/.../.npm/socket.io

Если вы используете   sudo npm install -g socket.io

Путь установки будет

/usr/local/lib/node_modules/socket.io

В первом случае я попытался добавить путь socket.io в переменную глобального пути, но это не сработало.

Ответ 3

У меня была такая же проблема с версией 0.12.0 в Windows. Я пробовал npm install -g socket.io, но ничего не изменил. Также попробовал npm cache clean тоже без изменений, но после npm update npm -g все стало хорошо.

Ответ 4

Это почти так, как вы пытаетесь получить socket.io в html файлах, например:

index.html

где у вас есть:

 < script type="text/javascript" src="/socket.io/socket.io.js"></script>

Он не найдет socket.io, потому что вы не запустили модуль в своем файле приложения, в котором содержится сервер, например

server.js

Вы должны включить следующие строки после запуска своего сервера в server.js:

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

Надеюсь, сэкономит время.

Ответ 5

Я думаю, что вы выполнили команду npm install socket.io в другом месте, и ваши файлы находятся в другом каталоге. Поэтому либо запустите команду в том же каталоге, где есть ваши файлы, либо укажите путь, в котором вы уже установили socket.io в вашей переменной PATH.