MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

TypeError:đường dẫn phải là một chuỗi hoặc ngăn xếp Buffer MEAN

Để tải lên một tệp, bạn cần phải bao bọc tệp đó trong một FormData ví dụ như sau:

interface Profile {
   photo: File;
}

updatePhoto(profile: Profile, id: string) {
    const body = new FormData();
    body.append('photo',profile.photo);
    return this.http.post(`http://localhost:3000/profile/photo/${id}`, body,)
        .map((response: Response) => response.json())
        .catch((error: Response) => {
            return Observable.throw(error.json());
        });
}

Hơn nữa, chương trình phụ trợ của bạn rất có thể bị lỗi trong phần sau:

user.img.data = fs.readFileSync(req.body.photo);

Xem xét rằng bạn hiện đang tải lên biểu mẫu có multipart/form-data mã hóa, bạn sẽ cần sử dụng một số phần mềm trung gian để phân tích cú pháp yêu cầu trong phần phụ trợ của mình như đã nêu trong tài liệu expressjs

Bạn có thể sử dụng multer hoặc express-fileupload

Nếu bạn đi với thứ hai, bạn sẽ cần những thứ sau:

const fileUpload = require('express-fileupload');

router.use(fileUpload());// use express-fileupload as default parser for multipart/form-data encoding

router.post('/photo/:id', (req, res) => {
User.find({ _id: req.params.id })
    .exec((err, user) => {
        if (err) {
            return res.status(500).json({
                title: 'An error occured',
                error: err
            });
        }
        user.img.data = req.files.photo.data;
        user.img.contentType = 'image/png';
        user.save((err, obj) => {
            if (err) {
                throw err
            }
            console.log('success')
        })
    });
});



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongodb chèn tài liệu không có trường _id

  2. Nhóm và hiển thị dữ liệu

  3. Trong Morphia, làm cách nào để cập nhật một Đối tượng được nhúng bên trong ArrayList

  4. Mongoose trả về không xác định cho một trường hiện có

  5. Meteor mongodb tùy chỉnh trong quá trình phát triển