【发布时间】:2019-12-10 01:35:31
【问题描述】:
我试图让 Node 显示一个 HTML 文件(使用 fs、http 和 express),但该文件中的图像显示为断开的链接符号。
我试过写下面的代码,我有多次修改,但都没有成功。
var http = require('http');
var fs = require('fs');
var express = require('express');
var path = require('path');
var dt = require('./modules/myFirstModule');
var port = 3000;
var app = express();
app.use(express.static(path.join(__dirname + 'public')));
console.log(__dirname);
app.use('/images', express.static(path.join(__dirname + 'public' + 'images')));
http.createServer(function (req, res)
{
//res.writeHead(200, {'Content-Type': 'text/html'});
console.log("Server Created!");
fs.readFile('./html/index.html', function(err, data)
{
res.write(data);
res.end();
});
}).listen(port);
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title></title>
<script src="app.js"></script>
</head>
<body>
<img src="images/2016-collage.jpg"/>
</body>
</html>
我希望看到网页上显示的图像,但我只是得到损坏的图像链接符号。
【问题讨论】:
-
也许这有帮助:stackoverflow.com/a/42000621/3769045 TL;DR
app.use(express.static('public'));然后<img src="/images/2016-collage.jpg">