最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

返回托管在服务器上的图像的路径以在前端显示它

IT培训 admin 14浏览 0评论

返回托管在服务器上的图像的路径以在前端显示它

当前在我的服务器上,这些图片位于路径下:

/opt/myproject/assets/5259521.jpg
/opt/myproject/assets/5259522.jpg
/opt/myproject/assets/5259523.jpg

我正在使用nodejs创建我的Web服务。我想知道返回图像路径的方法是什么,以便前端可以在img标签中显示它们。

我的restAPI可以通过路径访问:

这里,我需要返回图像路径,以便可以在Web应用程序中显示它们。

    app.use(cors());
    app.options('*', cors());
    // parse application/x-www-form-urlencoded
    app.use(bodyParser.urlencoded({ extended: false }))

    // parse application/json
    app.use(bodyParser.json());

    // Configuración global de rutas
    app.use(require('./routes/index'));

    const distDirectory = path.join(__dirname, '/public');

    app.get('*', function (req, res, next) {
        const file_path = path.join(distDirectory, req.url.split('?').shift());
        if (fs.existsSync(file_path)) next();
        else res.sendFile(path.join(distDirectory, 'index.html'));
    });
    app.use(express.static(distDirectory));

谢谢

回答如下:

要提供静态文件,例如图像,CSS文件和JavaScript文件,请使用Express中的express.static内置中间件功能。

功能签名是:

express.static(root, [options])

您需要将所有图像放置在public文件夹中或添加您选择的文件夹名称,然后将静态文件夹传递到express.static中间件中。

文件夹的名称Public仅是一个约定,您可以将文件夹的名称设置为任何名称。

例如,使用以下代码在名为public的目录中提供图像,CSS文件和JavaScript文件:

app.use(express.static('public'))

并且像这样访问它:

http://localhost:3000/assets/5259521.jpg

我假设您的图像在public/assets文件夹下。

返回托管在服务器上的图像的路径以在前端显示它

当前在我的服务器上,这些图片位于路径下:

/opt/myproject/assets/5259521.jpg
/opt/myproject/assets/5259522.jpg
/opt/myproject/assets/5259523.jpg

我正在使用nodejs创建我的Web服务。我想知道返回图像路径的方法是什么,以便前端可以在img标签中显示它们。

我的restAPI可以通过路径访问:

这里,我需要返回图像路径,以便可以在Web应用程序中显示它们。

    app.use(cors());
    app.options('*', cors());
    // parse application/x-www-form-urlencoded
    app.use(bodyParser.urlencoded({ extended: false }))

    // parse application/json
    app.use(bodyParser.json());

    // Configuración global de rutas
    app.use(require('./routes/index'));

    const distDirectory = path.join(__dirname, '/public');

    app.get('*', function (req, res, next) {
        const file_path = path.join(distDirectory, req.url.split('?').shift());
        if (fs.existsSync(file_path)) next();
        else res.sendFile(path.join(distDirectory, 'index.html'));
    });
    app.use(express.static(distDirectory));

谢谢

回答如下:

要提供静态文件,例如图像,CSS文件和JavaScript文件,请使用Express中的express.static内置中间件功能。

功能签名是:

express.static(root, [options])

您需要将所有图像放置在public文件夹中或添加您选择的文件夹名称,然后将静态文件夹传递到express.static中间件中。

文件夹的名称Public仅是一个约定,您可以将文件夹的名称设置为任何名称。

例如,使用以下代码在名为public的目录中提供图像,CSS文件和JavaScript文件:

app.use(express.static('public'))

并且像这样访问它:

http://localhost:3000/assets/5259521.jpg

我假设您的图像在public/assets文件夹下。

发布评论

评论列表 (0)

  1. 暂无评论