javascript - 获取带有数组图像的 json 对象返回意外的 json 结尾
问题描述
我确信它之前已经处理过,但我无法从谷歌找到另一个答案。当我使用邮递员获取路线时,它返回以下错误:
- [0] SyntaxError: JSON inpu [0]at JSON.parse () [0]at model.get (C:\Users\EA_Ma\Desktop\App-projects\majeksCorp\models\Services.js:55: 23) [0] 在 model.get (C:\Users\EA_Ma\Desktop\App-projects\majeksCorp\node_modules\sequelize\lib\model.js:3465:41) [0] 在 model.get (C:\用户\EA_Ma\Desktop\App-projects\majeksCorp\node_modules\sequelize\lib\model.js:3499:33) [0] 在 model.toJSON (C:\Users\EA_Ma\Desktop\App-projects\majeksCorp\node_modules \sequelize\lib\model.js:4368:12) [0] 在 JSON.stringify () [0] 在 stringify (C:\Users\EA_Ma\Desktop\App-projects\majeksCorp\node_modules\express\lib\response .js:1123:12) [0] 在 ServerResponse.json (C:\Users\EA_Ma\Desktop\App-projects\majeksCorp\node_modules\express\lib\response.js:260:14) [0] 在 C: \Users\EA_Ma\Desktop\App-projects\majeksCorp\routes\api\services.js:179:30 [0] 在 processTicksAndRejections (internal/process/task_queues.js:97:5)
这是受影响的架构:
"use script";
module.exports = (sequelize, Datatypes) => {return sequelize.define("service",{
id: {
type: Datatypes.UUID,
primaryKey: true,
defaultValue: Datatypes.UUIDV4,
title: {
type: Datatypes.STRING,
required: true,
allowNull: true,
},
category: {
type: Datatypes.STRING,
required: true,
allowNull: true,
},
description: {
type: Datatypes.STRING,
required: true,
allowNull: true,
},
picture: {
type: Datatypes.STRING,
},
service_gallery: {
type: Datatypes.STRING,
defaultValue: null,
get: function () {
return JSON.parse(this.getDataValue("service_gallery"));
},
set: function (val) {
return this.setDataValue("service_gallery", JSON.stringify(val));
},
allowNull: true,
},
date: {
//Exakt den datum som personen registrera sig
type: Datatypes.DATE,
defaultValue: Datatypes.NOW,
},
//This is the columns or database
updated_at: { type: Datatypes.DATE },
deleted_at: { type: Datatypes.DATE },
},
{
underscored: true, //This is created for it
paranoid: true, //Database won't really delete information from database.
}
);
};
这是我调用的方法。
router.get("/:category/:title", async(req, res) => {
const errors = {};
await db.service.findOne({
where: {[Op.and]: [{category: req.params.category}, {title: req.params.title}]}
})
.then((service) => {
if (!service) {
errors.noservice = "Nothing was found";
res.status(404).json(errors);
return;
}
if(service) return res.json(service);
})
.catch((err) => console.log(err));
});
我认为错误源于架构中的这一行: return JSON.parse(this.getDataValue("service_gallery"));
解决方案
推荐阅读
- java - Vertx 中断挂起的线程
- powershell - Powershell Splatting 对象属性(Typeof System.Collections.Hashtable)
- tensorflow - 如何使用 TimeDistributed Layer 使用 bert 层进行多实例学习?
- java - 尝试并未能在 Spring-boot DTO 中创建从 3 个表中获取数据的 DTO
- ios - 嵌套 UIView 中的 Swift 按钮不可点击
- python - 从其他地方运行多处理 Python 脚本时出现问题的潜在原因是什么?
- android - 有没有像右下抽屉这样的图书馆?
- r - 将值重新分配给不同的列
- dockerfile - 无法使用 git bash 创建 docker 映像
- amazon-web-services - 为什么当我添加多个 AWS Lambda 层时表现不同?