【发布时间】:2020-02-16 10:54:39
【问题描述】:
我正在研究这个 api,出于任何原因,它会返回消息错误:
SyntaxError:JSON 输入意外结束。
我正在做 MySQL 连接,在这里一切正常,但是当我尝试执行 POST 请求时出现问题。 我的 MySQL 数据库正在 100% 工作。
代码 API
var express = require('express');
var router = express.Router();
var mysql = require('mysql');
router.post("/postPersona", MiddlewareMultipart, (req, res, next) => {
//console.log("." + req.files.Src.path.split("public")[1]);
//console.log(req.body);
var query = 'CALL addPersonas(?,?,?,?,?,?)';
var imgPath = "." + req.files.Src.path.split("public")[1];
var datos =
[
req.body.Nombre,
req.body.Telefono,
req.body.Curp,
req.body.ECivil,
Number(req.body.Edad),
imgPath
]
conn.query(query, datos, (err, results, fields) => {
if (err) {
console.log("Error" + err);
res.send(JSON.stringify("Error: " + err));
}
else {
console.log(results);
res.send(JSON.stringify(results[0]));
}
});
});
前端 JS
var Agregar = () => {
var formData = new FormData();
formData.append("Nombre", NomSrc.value);
formData.append("Telefono", TelSrc.value);
formData.append("Curp", CurpSrc.value);
formData.append("ECivil", EstCSrc);
formData.append("Edad", EdadSrc.value);
formData.append("Src", ImgSrc.files[0]);
var url = "http://localhost:3000/apiMYSQL/postPersona";
fetch(url, {
method: "POST",
body: formData
})
.then((response) => {
return response.json();
})
.then((data) => {
console.log(data);
alert(data);
})
.catch((error) => {
console.log("Error: " + error);
})
}
控制台日志(结果)
OkPacket {
fieldCount: 0,
affectedRows: 1,
insertId: 0,
serverStatus: 2,
warningCount: 0,
message: '',
protocol41: true,
changedRows: 0
}
【问题讨论】:
标签: javascript node.js api post fetch