我正在尝试提供来自快递服务器的静态资产,该服务器碰巧安装了阿波罗服务器,但这是一个与express.static配置相关的问题。这是我的文件夹结构的截图

这是快速配置的代码。它位于/config/app.js内部
import express from 'express';
import bodyParser from 'body-parser';
import morgan from 'morgan';
import cookieParser from 'cookie-parser';
import cors from 'cors';
import path from 'path';
const PORT = process.env.PORT || 3001;
const environment = process.env.NODE_ENV || 'development';
const loggingType = environment === 'development' ? 'dev' : 'tiny';
const app = express();
app.use(
bodyParser.json({ limit: 1024 * 1024 * 2000, type: 'application/json' })
);
app.use(morgan(loggingType));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, './assets/images')));
export default app;如果我试图访问localhost:3001/映像,上面写着Cannot get /images
我做错了什么?
发布于 2018-12-10 06:40:15
请试用以下方法:
app.use(‘/assets’, express.static(path.join(__dirname, '..', ‘assets’)));根据目录结构将参数更改为path.join。
发布于 2018-12-09 20:57:24
__dirname表示当前模块的目录名。您应该使用‘./assets/映像’作为图像的静态路径。
试图访问localhost:3001/映像返回一个错误,因为它是一个静态目录,而不是文件。访问本地主机:3001/映像/test.png应该可以工作。
但是首先,您需要定义静态目录。而不是:
app.use(express.static(path.join(__dirname, './assets/images')));做:
app.use('/images', express.static(path.join(__dirname, '..', '/assets/images')));希望这能有所帮助!
发布于 2018-12-10 12:17:44
您可以以另一种方式使用static函数:
app.use('/', express.static('assets'));
...and调用图像如下所示:
<img src='/images/logo.png'>
我希望这能帮到你。
https://stackoverflow.com/questions/53695363
复制相似问题