通过firebase功能上传图像

时间:2018-05-18 08:59:30

标签: reactjs firebase express google-cloud-storage dropzone.js

我有一个使用react-dropzone-component的反应应用。当我向其中删除图像时,我会在firebase函数上为每个图像发送一个POST请求(在将来的批量上传中,但只有一步),以处理该文件并将其保存在本地tmp存储的函数中。如果我使用远程网址,则cors使用Access-Control-Allow-Origin http://localhost:3000时始终会失败。但是,当我在本地提供函数并使用localhost url进行上传功能时,它可以工作。

上传快递功能:

const storage = multer.diskStorage({
  destination: './tmp/',
  filename: (req, file, cb) => {
    cb(null, file.originalname);
  }
});

const upload = multer({ storage });

export default () => {
  const app = express();
  app.use(cors(), upload.single('file'), (req, res) => {
    if (req.file) {
      res.send({ path: req.file.path });
    } else {
      res.send({ responseText: 'no file' });
    }
  });
  return app;
};

还尝试使用cors({ origin: true })cors({ origin: 'http://localhost:3000' }),但没有运气。

我从该函数获得的响应为'no file',当我将console.log放入其中时,文件为null。在localhost,它按预期工作。

0 个答案:

没有答案