nodejs 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)

解决方法

我认为您需要导入mysql2的Promise版本:

from selenium import webdriver
import time
driver=webdriver.Chrome() 
driver.get("https://YouTube.com") 
driver. maximize_window() 
a=input('press y if you want to scroll down') 
if a=='y':
    while(True) :                  
          driver. execute_script("window.scrollBy(0,150) ","")
          time.sleep(2) 
else:
Print(" Ok")