node.js - 学生验证失败:图像:需要路径“图像”
问题描述
我在rest API的帮助下使用node js上传了图像,当我们上传数据和图像时,邮递员给出了学生验证失败之类的错误:图像:需要路径image
。
我的邮递员回应是:
{
"errors": {
"image": {
"name": "ValidatorError",
"message": "Path `image` is required.",
"properties": {
"message": "Path `image` is required.",
"type": "required",
"path": "image"
},
"kind": "required",
"path": "image"
}
},
"_message": "Student validation failed",
"name": "ValidationError",
"message": "Student validation failed: image: Path `image` is required."
}
我的架构是
const mongoose = require('mongoose');
const validator = require('validator');
const studentSchema = new mongoose.Schema({
name: {
type: String,
required: true
},
email: {
type: String,
required: true,
unique: [true, 'Email Id Already Exists..'],
validate(value) {
if (!validator.isEmail(value)) {
throw new Error('Invalid Email');
}
}
},
contact: {
type: Number,
min: 10,
required: true,
unique: true,
},
address: {
type: String,
required: true,
},
image: {
type: String,
required: true,
},
})
// we will create a new connection
const Student = new mongoose.model('Student', studentSchema);
module.exports = Student;
这是我的 API
app.post('/students', upload.single('image'), async (req, res) => {
try {
const user = new Student(req.body);
console.log('req.body');
const createStudent = await user.save();
res.status(201).send(createStudent);
} catch (e) {
res.status(400).send(e);
}
});
请帮我
解决方案
图像不包含在 req.body 中,如果您使用 multer,您会在 req.file 中找到图像,控制台记录它,然后将图像设置为 req.file.path 以将其存储到 DB
推荐阅读
- apache-spark - 使用 Pyspark 插入时锁定配置单元表
- swift - 使 CAShapeLayer 和 CGPath 符合 Codable 或 NSCoding
- reactjs - 是否可能带有子页面的反应导航抽屉?
- mysql - 为什么 Laravel 在时间戳中存储不同的时间
- python - 从python清除内存缓存
- jenkins - Hw 从 Jenkins 等持续集成服务中自动提取构建指令
- javascript - jquery:无法通过标签获取嵌套元素并更改其html
- mongodb - 从数组中计算总和并对 mongodb 进行排序
- python - 我的 python 代码如何自动知道在 Excel 中停止在哪一行
- ios - 如何处理表视图单元格中的全部打开/全部关闭,每个单元格在 iOS Swift 中具有查看更多/查看更少选项