相对于 url 快速加载图像
Express loading images relative to url
我正在使用 express 构建一个相当基本的网页。但是,我在使用图像路径时遇到了一些问题。
这段代码工作正常。
app.use(express.static(path.join(__dirname, "/app/public/")));
app.get("/overview", function(req, res) {
res.render('some-file');
});
里面有些-file.ejs我有...
<img src="assets/images/picture.jpg">
但是当我有第二条 url 途径时,它不起作用。
app.get("/overview/specific", function(req, res) {
res.render('another-file');
});
<img src="assets/images/picture.jpg">
在这个例子中,我试图加载完全相同的图像(在我的例子中,它是在每个页面上重复使用的横幅)。这给我一个找不到图像的错误。我从控制台错误中注意到的是图像是从 localhost:3000/overview/assets/images/picture.jpg 加载的
我不明白为什么 express 试图从第一个路径加载图像(在本例中为概述)。概述不应该在路径中!
谁能帮我调试这个问题?
提前致谢
我们使用 ExpressJS 重定向动态提供网站图标,效果很好。
首先,我们根据 req.hostname 通过快速查找从内存中检索站点对象,然后发送此响应:
res.redirect(site.favicon);
favicon 变量可以是我们服务器上的静态资产,也可以是另一台服务器上的资产。我们的前端代码只是调用 /api/resources/favicon,它将在 return.
中接收到正确的 link
尝试使用/assets/images/picture.jpg
。
在路径前添加/
。然后它将以 /app/public/
作为根并确保图像位于 :
/app/public/assets/images/picture.jpg
现在无论你想去哪里picture.jpg
只要传递这个绝对路径。
我正在使用 express 构建一个相当基本的网页。但是,我在使用图像路径时遇到了一些问题。
这段代码工作正常。
app.use(express.static(path.join(__dirname, "/app/public/")));
app.get("/overview", function(req, res) {
res.render('some-file');
});
里面有些-file.ejs我有...
<img src="assets/images/picture.jpg">
但是当我有第二条 url 途径时,它不起作用。
app.get("/overview/specific", function(req, res) {
res.render('another-file');
});
<img src="assets/images/picture.jpg">
在这个例子中,我试图加载完全相同的图像(在我的例子中,它是在每个页面上重复使用的横幅)。这给我一个找不到图像的错误。我从控制台错误中注意到的是图像是从 localhost:3000/overview/assets/images/picture.jpg 加载的 我不明白为什么 express 试图从第一个路径加载图像(在本例中为概述)。概述不应该在路径中! 谁能帮我调试这个问题?
提前致谢
我们使用 ExpressJS 重定向动态提供网站图标,效果很好。
首先,我们根据 req.hostname 通过快速查找从内存中检索站点对象,然后发送此响应:
res.redirect(site.favicon);
favicon 变量可以是我们服务器上的静态资产,也可以是另一台服务器上的资产。我们的前端代码只是调用 /api/resources/favicon,它将在 return.
中接收到正确的 link尝试使用/assets/images/picture.jpg
。
在路径前添加/
。然后它将以 /app/public/
作为根并确保图像位于 :
/app/public/assets/images/picture.jpg
现在无论你想去哪里picture.jpg
只要传递这个绝对路径。