Mysql 我的nodejs代码正在数据库中插入(注册),但在updateOrder表中返回错误500内部服务器错误
从这个表(updateOrder)运行Node.js服务器时,我遇到了这个错误 它是android项目的后端 它注册订单,但在updateOrder中返回Mysql 我的nodejs代码正在数据库中插入(注册),但在updateOrder表中返回错误500内部服务器错误,mysql,node.js,json,internal-server-error,Mysql,Node.js,Json,Internal Server Error,从这个表(updateOrder)运行Node.js服务器时,我遇到了这个错误 它是android项目的后端 它注册订单,但在updateOrder中返回500内部服务器错误…任何帮助都将不胜感激 router.post('/updateOrder', function (req, res, next) { if (req.body.key == API_KEY) { var order_id = req.body.orderId var order_detail t
500
内部服务器错误…任何帮助都将不胜感激
router.post('/updateOrder', function (req, res, next) {
if (req.body.key == API_KEY) {
var order_id = req.body.orderId
var order_detail
try {
order_detail = JSON.parse(req.body.orderDetail)
}
catch (err) {
res.status(500)
res.send(JSON.stringify({ success: false, message: err.message }))
}
if (order_detail != null && order_id != null) {
var data_insert = []
for (i = 0; i < order_detail.length; i++) {
data_insert[i] = [
parseInt(order_id),
order_detail[i]["foodId"],
order_detail[i]["foodQuantity"],
order_detail[i]["foodPrice"],
0, // discount
order_detail[i]["foodSize"],
order_detail[i]["foodAddon"],
parseFloat(order_detail[i]["foodExtraPrice"])
]
}
req.getConnection(function (error, conn) {
conn.query('INSERT INTO OrderDetail(OrderId,ItemId,Quantity,Price,Discount,Size,Addon,ExtraPrice) VALUES(?)', data_insert, function (err, rows, fields) {
if (err) {
res.status(500)
res.send(JSON.stringify({ success: false, message: err.message }))
}
else {
res.send(JSON.stringify({ success: true, message: "update success" }))
}
})
})
}
else {
res.send(JSON.stringify({ success: false, message: "Missing orderID body marfe" }))
}
}
else {
res.send(JSON.stringify({ success: false, message: "Wrong api key marfe" }))
}
})
猜测是
JSON.parse(req.body.orderDetail)
产生了问题??您是否尝试了JSON.parse(JSON.stringify(req.body.orderDetail))
?它不起作用。。。又犯了同样的错误
router.get('/orderDetail', function (req, res, next) {
if (req.query.key == API_KEY) {
req.getConnection(function (error, conn) {
var order_id = req.query.orderId
if (order_id != null) {
conn.query('SELECT orderId,itemId,quantity,discount,extraPrice,size,addOn FROM OrderDetail WHERE orderId=?', [order_id], function (err, rows, fields) {
if (err) {
res.status(500)
res.send(JSON.stringify({ success: false, message: err.message }))
}
else {
if (rows.length > 0) {
res.send(JSON.stringify({ success: true, result: rows }))
}
else {
res.send(JSON.stringify({ success: false, message: "Empty" }))
}
}
})
} else {
res.send(JSON.stringify({ success: false, message: "Missing restaurantId in query" }))
}
})
}
else {
res.send(JSON.stringify({ success: false, message: "Wrong orderFBID key marfe" }))
}
})