Я пытаюсь написать форму для создания пользователя. В моей лямбда-функции. Я хочу попробовать, если bcrypt работает или нет, поэтому я добавляю что-то вроде этого:
...
const bcrypt = require('bcryptjs')
...
exports.handler = async (event, error, callback) => {
const email = event.email ? event.email : ''
const username = event.username ? event.username : ''
const password = event.password ? event.password : '' // in this example,I use '123123' as a test password
const timestamp = new Date().getTime().toString()
...
const saltRounds = 10
const passwordhash = await bcrypt.hashSync(password, saltRounds)
console.log('passwordhash' , passwordhash)
const compareResult = await bcrypt.compareSync(passwordhash , password)
console.log('compateresult' ,compareResult )
Но я не знаю, почему в CompareResult. Это всегда возвращает ложь. Я прочитал некоторые другие вопросы, которые также имеют ту же проблему, и он сказал, что я должен использовать await и позволить ему работать. Однако я все еще не могу это исправить. Кто-нибудь может объяснить, как работают bcrypt.hashSync и bcrypt.compareSync?