【发布时间】:2020-04-09 13:45:12
【问题描述】:
我正在尝试提取对象/数组 myResults,我已经尝试了尽可能多的方法来提取它,但无法做到,有人可以帮忙吗?
var express = require('express');
var router = express.Router();
var mysqlx = require('@mysql/xdevapi');
router.post('/email/:email', function (req, res, next){
let p_email = req.params.email
console.log (p_email)
mysqlx
.getSession( {
user: 'user',
password: 'password',
host: 'localhost',
port: '33060',
})
.then(function(session) {
const oracleDb = session.getSchema('nms2019local');
var myTable = oracleDb.getTable('operators');
myTable
.select (['email','password', 'admin'])
.where('email like :email')
.bind('email', p_email)
.execute(function (row) {
console.log(row);
const foundEmail = row[0]
const password = row[1]
const admin = row[2]
const myResults = {
foundEmail: foundEmail,
password: password,
admin: admin }
console.log(myResults);
return (myResults, console.log(myResults));
})
.catch(function(err) {
console.log(err);
})
return (myResults)
})
res.send('Oracle5 is here');
});
module.exports = router;
这是 nodemon 显示的内容:
test@email.com
POST /oracle5/email/test@email.com 200 14.621 ms - 15
[
'test@email.com',
'password',
1
]
{
foundEmail: 'test@email',
password: 'password',
admin: 1
}
[
{
getWarnings: [Function: getWarnings],
getWarningsCount: [Function: getWarningsCount],
fetchAll: [Function: fetchAll],
fetchOne: [Function: fetchOne],
getColumns: [Function: getColumns],
getResults: [Function: getResults],
nextResult: [Function: nextResult],
toArray: [Function: toArray]
}
这可能是一件非常简单的事情,但我已经尝试了几次迭代,但无法获得正确的组合来将数组作为对象取出。还有一个 .this() 函数,它似乎最适合我正在尝试做的事情,但文档很糟糕,所以如果请提供有关该函数的一些信息,我们将不胜感激。
【问题讨论】:
-
需要更多说明。你想达到什么目的??
-
从结果中提取数组的代码在哪里??