2015-08-27 3 views
0

У меня установлено и запущено node.js на ПК. Когда я делаю pakage.json, как показано ниже, то в этой папке запуска CMDSocket.io не удалось проверить первый сертификат

npm install socket.io 

или

npm install 

это дает ошибку

unable to verify the first certificate 

Как я могу это исправить?

package.json

{ 
    "name": "app", 
    "version": "0.0.1", 
    "description": "app", 
    "dependencies": { 
    "socket.io": "latest" 
}, 
    "author": "shadryck" 
} 

Примечание: Я совершенно новой для Node.js и Socket.io. Я просто пытаюсь начать с этого как-то.

ПРИМЕЧАНИЕ: если по какой-то причине вы собираетесь уменьшить это, по крайней мере, объясните, почему. Я сделал свое исследование и не смог найти ответ нигде.

ОБНОВЛЕНИЕ: исправлено его, переустановив node.js и перезагрузив компьютер после не перезапуска его в течение очень долгого времени.

UPDATE: установлен python, но теперь его ныть еще больше ошибок. screenie

+0

Вы знаете, если вы сидите за прокси? Также что делает 'npm config get [ca]' return? – John

+0

@ john-omahoney Я никогда не касался прокси-сервера, поэтому я предполагаю, что его безопасно предположить, что я не использую прокси-сервер. 'npm config get [ca]' возвращает undefined – shadryck

ответ

8

Поскольку вы не находитесь за прокси-сервером, я думаю, что это может быть проблемой для доверенных центров сертификации SSL.

Во-первых, вы можете попробовать силы НПМ использовать известные регистраторы

npm config set ca "" 

Если это не работает, это, возможно, из-за отсутствия из-сертификатов установки.

Вы можете попробовать переустановить/обновить НПЙ с соответствующими сертификатами, выполнив следующие действия, чтобы

npm config set ca "" 
npm install npm -g 
npm config delete ca 

Если это все еще не удается, возможно, придется принудительно загрузить недостающие СА. К счастью, есть библиотека для исправления этого. К сожалению, в этом процессе есть недостаток безопасности. (Я открыт для улучшения слуха!).

Во-первых, выключите SSL в НПМ (это ловушкой безопасности) с помощью

npm config set strict-ssl false 

то вы можете установить

npm install ssl-root-cas 

затем просто введите узел и в типе REPL

var sslRootCAs = require('ssl-root-cas/latest') 
sslRootCAs.inject() 

затем вернитесь на SSL и проверьте

npm config set strict-ssl false 
+0

'npm config set ca" "' 'npm install npm -g' ' npm config delete ca' возвращает точно такую ​​же ошибку. 'не удалось проверить первый сертификат' Выключил скрипт-ssl и получил следующую ошибку. 'писать EIO' Это приводит меня в орехи (╯ ° □ °) ╯ (┻━┻ вещи просто не имеют смысла. Должен ли я попытаться переустановить node.js рядом или еще что-то? – shadryck

+0

@shadryck Конечно, не повредит! – John

+0

@ john-omahoney Хорошо, переустановил node.js, перезапустил компьютер и снова запустил «npm install socket.io» и на этот раз получил что-то другое. Теперь он скулит о недостатке python. Ошибка: не удается найти исполняемый файл Python «python», вы можете установите переменную PYTHON env' – shadryck

0

Вы также можете иметь возможность просто переключиться использовать обычный HTTP реестра вместо HTTPS по умолчанию, выполнив одно:

npm config set registry http://registry.npmjs.org/ 

Как уже упоминалось в npm issue 8872

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