[英]How can I return the numeric value of a React container instead of an object?
[英]How can I return an object instead of an array?
我試圖返回一個 JSON 對象,但它返回一個數組。 我使用主鍵進行查詢,所以我確信我只會得到一個結果。
這是我的方法:
router.get("/student_info/:id", (req, res, next) => {
connection.getConnection((error, currentConnection) => {
if (!!error) {
console.log("Error occurred while connecting db")
} else {
let id = req.params.id;
currentConnection.query("SELECT * FROM students WHERE id=" + "'" + id + "'", (error, rows, fields) => {
if (!!error) {
console.log(error.message)
} else {
res.status(200).json(rows);
}
currentConnection.release();
});
}
});
});
我想要的是這個:
{
"id": "171-15-8966",
"name": "Alif Hasnain",
"course_code": "CSE412,CSE413"
}
但我得到這樣的結果:
[
{
"id": "171-15-8966",
"name": "Alif Hasnain",
"course_code": "CSE412,CSE413"
}
]
只需在 json 轉換之前獲取數組的第一個元素:
res.status(200).json(rows[0]);
默認情況下,查詢返回選擇查詢所反映的行數組。 由於您的查詢具有單個結果,因此它作為單個對象的數組返回給用戶。
您可以將其更改為
res.status(200).json(rows[0]);
如果有更好的替代品,請告訴我們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.