У меня была эта функция для обновления информации о пользователе:
const update = (req, res, next) => {
let user = req.profile
user = _.extend(user, req.body)
user.updated = Date.now()
user.save((err) => {
if (err) {
return res.status(400).json({
error: errorHandler.getErrorMessage(err)
})
}
user.hashed_password = undefined
user.salt = undefined
res.json(user)
})
}
Затем я добавил изображение в свой профиль пользователя, поэтому хотел иметь возможность загрузить его при редактировании пользователя.Вот как теперь выглядит мой код:
const update = (req, res, next) => {
let form = new formidable.IncomingForm()
form.keepExtensions = true
form.parse(req, (err, fields, files) => {
if (err) {
return res.status(400).json({
error: "Photo could not be uploaded"
})
}
let user = req.profile
user = _.extend(user, fields)
user.updated = Date.now()
if(files.photo){
user.photo.data = fs.readFileSync(files.photo.path)
user.photo.contentType = files.photo.type
}
user.save((err, result) => {
if (err) {
return res.status(400).json({
error: errorHandler.getErrorMessage(err)
})
}
user.hashed_password = undefined
user.salt = undefined
res.json(user)
})
})
}
Теперь я хочу иметь возможность включить изображение профиля при создании пользователя.Вот как в настоящее время выглядит моя функция создания:
const create = (req, res, next) => {
const user = new User(req.body)
user.save((err, result) => {
if (err) {
return res.status(400).json({
error: errorHandler.getErrorMessage(err)
})
}
res.status(200).json({
message: "Successfully signed up!"
})
})
}
Я отредактировал ее так:
const create = (req, res, next) => {
let form = new formidable.IncomingForm()
form.keepExtensions = true
form.parse(req, (err, fields, files) => {
if (err) {
return res.status(400).json({
error: "Photo could not be uploaded"
})
}
let user = new User(req.body)
user = _.extend(user, fields)
if(files.photo){
user.photo.data = fs.readFileSync(files.photo.path)
user.photo.contentType = files.photo.type
}
user.save((err, result) => {
if (err) {
return res.status(400).json({
error: errorHandler.getErrorMessage(err)
})
}
res.status(200).json({
message: "Successfully signed up!"
})
})
})
}
Когда я сейчас пытаюсь создать пользователя, я получаю ошибку Photo could not be uploaded
.Очевидно, что-то не так с моей функцией создания, но я не знаю, что это такое.Что я делаю не так?
Дополнительная информация.
Это ошибка, которую я получаю:
Ошибка: неверный заголовок типа содержимого, неизвестный тип содержимого: текстовый / обычный; кодировка = UTF-8