【问题标题】:Write buffer results in path error when uploading a stream with Skipper and Sails使用 Skipper 和 Sails 上传流时写入缓冲区导致路径错误
【发布时间】:2018-09-05 12:27:19
【问题描述】:

我已转换上传并将其存储为缓冲区。当我写这个缓冲区时,我得到一个路径错误。

TypeError:路径必须是字符串或缓冲区

  const adapter = require('skipper-better-s3')(options);
  var receiver = adapter.receive({dirname: "/original"});

  var upstream = req.file('file');

  upstream.upload(receiver, function(err, filesUploaded){
    adapter.read(filesUploaded[0].extra.fd, (err, image) => {          

      Jimp.read(image,function(err,image){

        image.resize(600, Jimp.AUTO).quality(60).getBuffer(image.getMIME(),function(err,buffer){

          const stream = fs.createReadStream(buffer);

          receiver = adapter.receive({dirname: "/thumbs"});

          receiver.write(file, () => {
            console.log(file.extra)
          });
        });
      });
    });
  });

【问题讨论】:

    标签: sails.js buffer skipper sails-skipper upstream-branch


    【解决方案1】:

    我想你的答案就在这里:Converting a Buffer into a ReadableStream in nodejs

    另外,请检查您的代码,但我认为您这里有错误:

          const stream = fs.createReadStream(buffer);
    
          receiver = adapter.receive({dirname: "/thumbs"});
    
          receiver.write(file, () => {
            console.log(file.extra)
          });
    

    receiver.write(file, () => { 应该是receiver.write(stream, () => {

    但首先要确保该流实际上是按照上面链接中的描述创建的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-13
      • 1970-01-01
      • 1970-01-01
      • 2018-01-04
      • 2019-03-10
      • 2016-12-07
      • 2023-03-11
      • 1970-01-01
      相关资源
      最近更新 更多