gpt4 book ai didi

mysql - 我该如何解决这个问题? ( Node 、mysql 和异步/等待)

转载 作者:行者123 更新时间:2023-11-29 18:22:01 25 4
gpt4 key购买 nike

我是这个领域的新手,我正在使用node.js(带有express)、mysql和async/await测试一些东西,但我找不到解决此错误的方法:

const user = await con.query(sql, [EP.email, EP.password]);
^^^ SyntaxError: Unexpected identifier at createScript (vm.js:74:10)
at Object.runInThisContext (vm.js:116:10)
at Module._compile (module.js:588:28)
at Object.Module._extensions..js (module.js:635:10)
at Module.load (module.js:545:32)
at tryModuleLoad (module.js:508:12)
at Function.Module._load (module.js:500:3)
at Module.require (module.js:568:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/Users/Sern/Documents/test/server/lib/routes/login.js:4:16)

我的数据库模型:

var database = {};

database.con = async function() {

const mysql = require('mysql2/promise');

const connection = await mysql.createConnection({
host: "localhost",
user: "root",
database: "test",
multipleStatements: true });   }

module.exports = database;

我的帐户模型:

const database = require('../utils/database')

const con = database.con;

const Accounts = {};

Accounts.getByEP = function (EP, callback) {

var sql = "SELECT * FROM accounts WHERE email = ? and password = ?;";

const user = await con.query(sql, [EP.email, EP.password]);

callback(user);

};

module.exports = Accounts;

有什么我可以做的吗?

(PS:抱歉我的语法不好,我仍在学习英语)

最佳答案

await 仅在标记为 async 的函数中受支持。 Accounts.getByEP 不是异步函数,因此尝试await 其中的某些内容会引发语法错误。编写异步函数(EP,回调)应该可以修复它。由于 async 函数已经返回 Promise,因此也许不需要 callback :)

不幸的是,错误消息有点不清楚。

关于mysql - 我该如何解决这个问题? ( Node 、mysql 和异步/等待),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46496885/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com