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>`
}
簡單的文件夾瀏覽器源代碼
最后編輯于 :
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。
相關閱讀更多精彩內(nèi)容
- Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
- 模塊化公布自己的模塊功能. 其他模塊調(diào)用另外的模塊. 公布方法 如果要輸出一個鍵值對象{},可以利用exports...
- =========================================================...