gpt4 book ai didi

javascript - 无法使用 localhost node.js/express.js 服务器加载 html 图像

转载 作者:太空宇宙 更新时间:2023-11-04 09:11:12 25 4
gpt4 key购买 nike

我正在使用以下 node.js/express.js 服务器,

index.js:

const express = require('express');
const path = require('path');

const app = express();

app.get('/', function(req, res) {
res.sendFile(path.join(__dirname + '/index.html'));
});

app.listen(8000, function () {
console.log('Listening on port: 8000!');
});

和下面的html文件,

index.html:

<!doctype html>
<html>
<head>
<title>Will Alley</title>
</head>
<body>
<style type="text/css">
img {
width: 100%;
height: 100%;
}
</style>
<h2 id="myName">Will Alley</h2>
<img src="./DSC_1546_700_464.jpg" alt="an image.">
</body>
</html>

我的所有文件(index.js、index.html、DSC_1546_700_464.jpg)都在同一目录中。

当我启动我的服务器并导航到“localhost:8000”时,所有显示的都是标题和图像替代文本。

非常感谢任何帮助。

最佳答案

您在 express 中只有一条路线,一条用于 '/' 的路线。
下面是两个补充,一个通过添加 app.use(express.static(__dirname)) 来回答您的特定问题,这是危险的。更安全的方法是使用诸如 app.use('/images',express.static(__dirname+'/images')) 之类的东西来为您放置可服务内容的某些子目录提供服务。

const express = require('express');
const path = require('path');

const app = express();

app.get('/', function(req, res) {
res.sendFile(path.join(__dirname + '/index.html'));
});
// Static route for files in the current directory...
// Note that this serves all files relative to the given
// path, even ones you probably don't want.
app.use(express.static(__dirname));

// Note: you should really put these files in a subdirectory
// And use static like this:
app.use('/images', express.static(__dirname +'/images'));

app.listen(8000, function () {
console.log('Listening on port: 8000!');
});

关于javascript - 无法使用 localhost node.js/express.js 服务器加载 html 图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42104712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com