sendgrid делает ошибки тестовых бросков
Я запускаю узел на моем vps-сервере. узел находится в моем корне, моем приложении.js с node_modules (express, socket.io) находятся в /home / vps / public_html /
Когда я следую за GitHub readme для настройки sendgrid, у меня возникают проблемы:
Конфигурация.js не живет звуками этого, как когда я запускаю sendgrids простой пример кода, если я
A.) обратитесь к config.js, делая:
var sendgrid=new SendGrid(user,key);
Узел убивает себя, потому что пользователь не определен.
B.) обход конфигурации.JS по выполнение:
var sendgrid=new SendGrid({user:'my_user_name',key:'my_password'});
Я получаю консоль.журнал (сообщение) ['разрешение отклонено, неверные учетные данные']
Вот еще один образ моей структуры public_html:
Знает ли кто-нибудь, как активировать эту конфигурацию.js?
Должен ли я установить узел.js в моем public_html в начале?
1 ответ:
Итак, здесь есть несколько неправильных вещей:
1) у нас есть опечатка в README (который теперь обновлен)
Tl; dr-вы должны ввести
По сути, вы набираетеnpm test
Неmake test
make test
, а make возвращается и говорит: "Эй, в cwd нет правила для теста. Не похоже, чтобы мне было чем заняться. Пока!". Если вы посмотрите внимательно, в библиотеке узлов нет файла Makefile, поэтому, очевидно, не будет никаких правил. Так сделайте определенно не сработает в этом случае. То, что должен был сказать README-этоnpm test
. NPM является менеджером пакетов для node и имеет вспомогательный методtest
, который выполняет все тесты для данного модуля. Кроме того, просто для ясности - когда вы печатаетеnpm test
, все, что вы делаете, это запуск тестов для библиотеки. На самом деле это должно быть необходимо только в том случае, если вы добавляете функции или исправляете ошибки в самой библиотеке. Если вы пытаетесь использовать библиотеку для отправки электронной почты, вам следует прочитать раздел под названием "Использование".2) у вас есть опечатка в коде (вот почему другой пример не сработал)
Ваш код выглядит следующим образом:
var sendgrid = new SendGrid({user:'my_user_name', key:'my_password'});
Приведенный нами пример кода выглядит следующим образом:
var sendgrid = new SendGrid(user, key);
Заметили разницу? Вы передаете объект javascript, и вместо этого мы ожидаем два дискретных строковых значения. Библиотека интерпретирует это как ваше имя пользователя "{user: 'my_user_name', key: 'my_password'} " без пароля (потому что вы этого не сделали укажите второй параметр). Вместо этого вы должны сделать следующее:
var sendgrid = new SendGrid("my_user_name", "my_password");