#node.js #express #node-mysql2
#node.js #выразить #узел-mysql2
Вопрос:
мой маршрут такой
import express from 'express'
import mysql from 'mysql2'
import { dbusername } from '../constant/db'
import { dbpassword } from '../constant/db'
import { dbname } from '../constant/db'
import { host } from '../constant/db'
let router = express.Router()
router.post('/', async (request, res, next) => {
try {
const { email, password } = request.body
const connection = await mysql.createConnection({
host: host,
user: dbusername,
password: dbpassword,
database: dbname,
})
const [
rows,
fields,
] = await connection.execute(
'SELECT `id` FROM `users` WHERE `email`= ? AND `password` = ?',
[email, password]
)
res.status(200).json({ status: true })
} catch (error) {
console.log('error async', error)
}
})
Я пытаюсь запросить таблицу пользователей, чтобы проверить, существует ли пользователь. Использование асинхронного ожидания nodejs msql2. Я получил эту ошибку
error async TypeError: (intermediate value) is not iterable
at /Users/cos/Desktop/admin/routes/login.js:21:7
at processTicksAndRejections (internal/process/task_queues.js:93:5)
Ответ №1:
Я думаю, вам нужно импортировать обещанную версию mysql2:
import mysql from 'mysql2/promise';