как развернуть экспресс сервер API на цифровой океан - PullRequest
0 голосов
/ 26 апреля 2019

У меня есть капля убунту в цифровом океане, и я пытаюсь развернуть API nodejs/express.Я использовал этот урок для создания API, и он отлично работает на моей локальной машине (MacOS).Однако, когда я пытаюсь запустить сервер на моей капле, я получаю эту ошибку:

> node-mongo-registration-login-api@1.0.0 start /opt/loginAPI
> node ./server.js

/opt/loginAPI/_helpers/jwt.js:18
async function isRevoked(req, payload, done) {
      ^^^^^^^^

SyntaxError: Unexpected token function
    at createScript (vm.js:56:10)
    at Object.runInThisContext (vm.js:97:10)
    at Module._compile (module.js:549:28)
    at Object.Module._extensions..js (module.js:586:10)
    at Module.load (module.js:494:32)
    at tryModuleLoad (module.js:453:12)
    at Function.Module._load (module.js:445:3)
    at Module.require (module.js:504:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/opt/loginAPI/server.js:6:13)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-mongo-registration-login-api@1.0.0 start: `node ./server.js`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the node-mongo-registration-login-api@1.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/treetop/.npm/_logs/2019-04-26T18_59_02_737Z-debug.log

Любая помощь или совет будет принята с благодарностью

1 Ответ

1 голос
/ 26 апреля 2019

У вас есть ключевые слова async и function в одной строке, и переводчик жалуется на неожиданное слово function, что означает, что оно обрабатывает слово async нормально, но не распознает async function вместе. Я гарантирую, что у вас есть Node версии 8+ локально и версии менее 8 на вашем удаленном сервере. Node.js таких версий не имеет ключевого слова async (потому что он не поддерживает async / await изначально), поэтому он обрабатывает его как переменную или свойство объекта global. Конечно, он не может понять, почему вы используете ключевое слово function после этого и выходит:)

P.S. Имейте в виду, что Node 8 LTS заканчивается очень скоро.

...