首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >图片随节点上传后未在浏览器中显示

问图片随节点上传后未在浏览器中显示
EN

Stack Overflow用户
提问于 2021-10-14 12:37:17
回答 1查看 22关注 0票数 1

我正在尝试使用node-express服务器上传一些照片,我面临着两个问题,一个是关于图片扩展的问题,另一个是关于图片本身正在显示的问题。因此,在我上传后,文件被添加到upload路径,但像这种自动生成的名称2f22c2502b907f7bf0bc2567c43c801c,没有扩展名,如.png,即使我在浏览器中重命名文件,如2f22c2502b907f7bf0bc2567c43c801c.png,但浏览器看起来像默认的空图标浏览器,而不是上传的图片。

我该如何解决这两个问题呢?

代码语言:javascript
复制
const express = require('express')
const multer  = require('multer')
const path = require('path')
const child_process = require("child_process");
const app = express();
const PORT = 3000;
const upload = multer({ dest: 'uploads/' })

  app.post('/upload', upload.single('picture'), function (req, res, next) {
    const FILE_OUTPUT = path.join(__dirname, `uploads/${req.file.path}`)

  child_process.execFile(
      "/usr/bin/convert",
      [path.join(__dirname, req.file.path), "-resize", "280x150", FILE_OUTPUT],
      function() {
        console.log('done resizing', FILE_OUTPUT)
        return res.send(`

                <img src="${FILE_OUTPUT}"/>
     
          `);
      }
    );
});

app.use('/', express.static(path.join(__dirname, 'public')));

app.listen(PORT, function () { console.log('Example app listening on port: ', PORT) })
EN

回答 1

Stack Overflow用户

发布于 2021-10-14 13:05:19

这应该是一个multer任务,因为multer不会附加文件扩展名,所以需要在multer上进行一些设置。

检查此响应multer setup

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69570852

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档