javascript - API Routes以不同的结构返回数据,我需要返回一个对象数组
问题描述
目前我的 Api 正在返回一个对象而不是数组中的一个对象,但是我似乎无法分辨这两条路由之间的区别以及为什么一个会返回所述数据数组而不是另一个。我似乎无法在这里发现差异,除非它与使用 Op.like ORM 有关?
例如 :
router.get('/caseDetail/:id', (req,res) => {
db.caseDetail.findOne({
include : [db.Part,db.Fault,db.Disposition,db.Contact,db.Site]
}).then((response) => {
res.json(response);
}).catch((error) => {
console.table([stack.error,stack.id,error])
})
})
上面的路由返回一个数据数组,而下面的只返回一个对象
router.get('/caseDetail/:caseName', (req,res) => {
db.caseDetail.findAll({
include : [db.Part,db.Fault,db.Disposition,db.Contact,db.Site],
where : {
caseName:{
[Op.like]: req.params.caseName}
}
}).then((response) => {
console.log(response);
res.json(response)
}).catch((error) => {
console.log(error);
})
})
--------------------------对于上下文---------- ------
即使在其他脚本文件中,我也多次执行过这种方法,但我不需要以这种方式解析数据,这里有什么变形让我看不下去了吗?我错过了 JSON.parse(); 这里?Github
try {
const items = await axios.get(`/api/caseDetail/:caseName` + caseName);
console.log(items.data);
$tbody.empty()
items.data.forEach((item) => {
console.log(item);
返回结果
{id: 2, caseName: "1 - Fenway Park - 1", createdAt: "2021-07-27T18:13:55.000Z", updatedAt: "2021-07-27T18:13:55.000Z", UserId: 1, …}
错误信息
TypeError: items.data.forEach is not a function
at callSearchResults (searchInventory.js:29)
解决方案
推荐阅读
- testing - 如何定义用于 Oculus 远程监视器的“远程变量”?
- javascript - Javascript后置摄像头
- android - 滚动时 Listview 中的 Android 项目重叠
- java - 使用 JsonSubTypes 的 InvalidSchemaException,没有选择我在基本接口中定义的内容
- mysql - Mysql where 子句在主键字段上接受带有字符串的整数
- hive - 如何将字符串格式的日期(“April 25, 2018”)转换为 hive 中的时间戳?
- php - 在 PHP 中从 REST API 读取 JSON - 无数据
- angular - 在 Angular 6 中从控制台隐藏 IE 警告
- javascript - 元素句柄的 Puppeteer 循环不起作用
- java - 在 ClientInterceptor 上使用 grpc-java 在元数据中包含消息哈希?