javascript - 访问 Json 上的特定数据 - NodeJS
问题描述
我正在尝试从 json 访问数据,但我不能......我已经尝试了一些我在互联网上找到的解释,但我想我的代码有问题。
我正在使用以下代码从 sql server 数据库中获取数据:
async function getLogin1(Operador, Senha) {
try {
let pool = await sql.connect(config);
let getLogin1 = await pool.request()
.input('input_parameter', sql.VarChar, Operador)
.input('input_parameter1', sql.VarChar, Senha)
.query("SELECT Codigo, Operador, Senha FROM Usuario where Operador = @input_parameter and Senha = @input_parameter1");
return getLogin1.recordsets;
}
catch (error) {
console.log(error);
}
}
所以我在这里得到记录集并放入一个json:
router.route("/Login1").get((request, response) => {
console.log(request.body.operador);
console.log(request.body.senha);
Operador = request.body.operador;
Senha = request.body.senha;
dboperations.getLogin1(Operador, Senha).then(result => {
console.log(Operador, Senha);
response.json(result);
var json = JSON.stringify(result);
console.log(json);
})
})
在控制台上显示 json:
[[{"Codigo":1,"Operador":"Username","Senha":"123456"}]]
我想获取单个数据(codigo、operador 和 senha)以分别放入一个单独的字符串,但我无法访问数据。例如,当我尝试 json[0] 时,我得到了所有的 json(因为我的 json 包含我猜第一个位置的所有信息),当我尝试 json.Codigo(例如)时,我得到一个“未定义”错误。
我做错了什么,最好的解决方法是什么?
很抱歉知识不足,这是我的第一个 api。
(是的,这是一个登录代码,它不是处理用户数据的最佳方式,但它是一个供实习生使用的非常小的系统)
解决方案
您的 JSON“结果”是:
[[{"Codigo":1,"Operador":"MASTER","Senha":"TERA0205"}]]
所以它是一个数组数组,其中包含一个对象,键为 Codigo、Operador、Senha。
要获得该对象的 Codigo 的值,您可能需要像这样访问它
var CodigoVal = result[0][0].Codigo; // 1
var OperadorVal = result[0][0].Operador; // "MASTER"
推荐阅读
- javascript - PHP 中的 NumberFormatter 与 JS 中的 NumberFormat
- excel - 分发用户无法查看其代码的 Excel 加载项 (.xlam)
- javascript - 网站在 Galaxy S5 浏览器上无响应
- python - 我如何在 python 中实现 K 最近邻,它可以从头开始获得更好的准确性
- c - 列表中的学生 ID 没有被打印出来
- c# - 如何使用 ExcelDNA 访问 Excel 图表对象
- swift - 无法从 Firestore DocumentSnapshot 中提取日期或时间戳
- c++ - 制作一个使用模板创建类或子类对象的函数
- json - JsonSerializer 结构与 asp-net 核心 3.0
- r - 更改R中变量名称的函数