let fs = require("fs");
let http = require("http");
let path = require("path");
let server = http.createServer((request, response) => {
? ? let url = request.url
? ? //过滤掉浏览器标签页的标签
? ? if (url == "/favicon.ico") {
? ? ? ? response.end("")
? ? ? ? return
? ? }
? ? console.log(url)
? ? let dir = "test"
? ? //这一步是关键
? ? if (url !== "/") {
? ? ? ? dir = "." + url
? ? }
? ? let fileNames = fs.readdirSync(dir);
? ? let htmlTag = ""
? ? fileNames.forEach(file => {
? ? ? ? let filepath = path.join(dir, file);
? ? ? ? let status = fs.statSync(filepath);
? ? ? ? if (status.isDirectory()) {
? ? ? ? ? ? htmlTag += "<tr><td><a href ='" + filepath + "'>" + file + "</td></tr>"
? ? ? ? } else {
? ? ? ? ? ? htmlTag += "<tr><td>" + file + "</td></tr>"
? ? ? ? }
? ? })
? ? response.end(makeHtml(htmlTag))
})
server.listen(8000)
function makeHtml(html) {
? ? return `<!DOCTYPE html>
<html lang="en">
? ? <head>
? ? ? ? <meta charset="UTF-8">
? ? ? ? <title>Title</title>
? ? ? ? <link rel="stylesheet"
? ? ? ? ? ? ? integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
? ? </head>
? ? <body>
? ? ? ? <table class="table table-hover">
? ? ? ? ? ? <tbody>
? ? ? ? ? ? ${html}
? ? ? ? ? ? </tbody>
? ? ? ? </table>
? ? </body>
</html>`
}
简单的文件夹浏览器源代码
最后编辑于 :
?著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事?!?“怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- =========================================================...