node.js图片无法解析问题

原因 图片服务器在保存的时候是相对路径,相对路径在不同的情境下解析的结果是不同的
解决方法 相对路径绝对路径 即可读取

解决方案

  1. 把静态资源暴露出去
  2. app.use(express.static('uploads/'))
app.use(express.static('uploads/'))
  1. 图片的路径保存时不要用 相对,用绝对即可
  2. http://127.0.0.1:9999/xxxxxxxxxxxxxxx类似于这样的地址
示例代码
// 导入express
const express = require('express')
// 导入body-parser
const bodyParser = require('body-parser')
// multer 模块
const multer = require('multer')
// 导入跨域模块
var cors = require('cors')

// 设置保存的位置
const upload = multer({ dest: 'uploads/' })

// 创建服务器
const app = express()
// 让 express可以解析 post的数据
app.use(bodyParser.urlencoded({ extended: false }))
// 让ajax可以请求
app.use(cors())

//暴露上传文件的文件夹 
app.use(express.static('uploads/'))    // !!!主要代码

// 注册路由
app.post('/add',upload.single('键名'),(req,res)=>{
  ......
  const icon = `http://127.0.0.1:9999/${req.file.filename}`;    // !!!主要代码
  ......
});

// 开启服务器
app.listen(9999, () => {
    console.log('开启成功!');
  })

你可能感兴趣的:(node.js图片无法解析问题)