SyntaxError: await действителен только в асинхронной функции с argon2 - PullRequest
0 голосов
/ 31 мая 2019

Я использую argon2 в моем приложении для пароля.

try {
  if (await argon2.verify("<big long hash>", "password")) {
    // password match
  } else {
    // password did not match
  }
} catch (err) {
  // internal failure
}

Но с ошибкой SyntaxError: await действителен только в асинхронной функции. Как использовать функцию асинхронности?

1 Ответ

2 голосов
/ 31 мая 2019

Вы должны объявить асинхронную функцию с ключевым словом async:

const myAsyncFunc = async (hashKey, password) => { //<-- declare as an async function
  try {
    if (await argon2.verify(hashKey, password)) {
      // password match
    } else {
      // password did not match
    }
  } catch (err) {
    // internal failure
  }
}

myAsyncFunc("<big long hash>", "password");
  • Обновленный ответ, чтобы сделать его более подробным
...