node.js - CORS 问题不一致 - 2 个示例(VueJS 和 NodeJs)
问题描述
我有以下轴发布请求
例 1
前端
let data = this.itemsDuplicated;
console.log("length",data.length)
await axios({
method: "post",
url: `${url}/upDateTasksFromProgress`,
data: data
})
.then(response => {
console.log(response.data);
})
.catch(e => {
console.log(e);
});
节点
router.post("/upDateTasksFromProgress", (req, res) => {
let mysql = "";
req.body.forEach(el => {
mysql = `${mysql} update tasks set startDate = '${el.startDate}', endDate = '${el.endDate}', duration = ${el.duration} where id = ${el.id};`
});
console.log(mysql)
pool.getConnection(function (err, connection) {
if (err) {
connection.release();
resizeBy.send("Error with connection");
}
connection.query(mysql, function (error, result) {
if (error) {
console.log(error);
} else {
console.log(result)
res.json(result);
}
});
connection.release();
});
});
这工作正常。
我也有:
例 2
前端
let data = [];
this.tasks.forEach(el => {
let insert = {
id: el.id,
startDate: el.startDate,
endDate: el.endDate,
duration: el.duration,
parentId: el.parentId,
dependantOn: el.dependantOn,
fix: el.fix
};
data.push(insert);
});
console.log(data.length)
await axios({
method: "post",
url: `${url}/postTaskUpdates`,
data: data
})
.then(response => {
console.log(response.data);
})
.catch(e => {
console.log(e);
});
}
后端
router.post("/postTaskUpdates", (req, res) => {
let mysql = "";
req.body.forEach(el => {
mysql = `${mysql} update tasks set startDate = '${el.startDate}', endDate = '${el.endDate}', duration = ${el.duration}, parentId = '${el.parentId}', dependantOn = '${el.dependantOn}' where id = ${el.id};`
});
pool.getConnection(function (err, connection) {
if (err) {
connection.release();
resizeBy.send("Error with connection");
}
connection.query(mysql, function (error, result) {
if (error) {
console.log(error);
res.json(error)
} else {
console.log(result)
res.json(result);
}
});
connection.release();
});
});
第二个例子给了我以下错误:
“CORS 策略已阻止从源 'https://www.testing-fe.co.za' 访问 'https://www.testing-be.co.za/postTaskUpdates' 处的 XMLHttpRequest:否 'Access-请求的资源上存在 Control-Allow-Origin 标头。”</p>
两者都在后端完全相同的路由文件中。
唯一的区别是记录的数量。
在第一个示例中,有 22 条记录。
第二个有大约 1300 条记录。
除了记录的数量之外,其他一切都如上所示,在我看来完全一样。
任何建议将不胜感激。
解决方案
推荐阅读
- javascript - JS & CSS:同一句行中单个单词的字体颜色和粗细
- python - 将字典中的值从字典列表从字符串转换为整数
- python - 为什么我在应用 ResNet50 时会出现异常的准确度和数据丢失?
- python - 如何在 Django 中为一对多关系的子类提供查询集字段?
- node.js - 如何创建通用数据库配置代码以在 2 个不同的 api 中使用
- javascript - 从 lichess.org 上的 DOM 创建图像
- c# - 如何将 CSR 文本文件转换为 .NET Core/Standard CertificateRequest 以进行签名?
- x86 - CPU 如何知道它正在执行 Kernel/Ring-0 指令?
- javascript - 节点 Mssql 模块错误:RequestError:将数据类型 nvarchar 转换为 bigint 时出错
- c++ - 我正在尝试在 Mac OS 上安装辣椒粉