import http from 'http';
import url from 'url';
import path from 'path';
import fs from 'fs';
import os from 'os';
import mime from 'mime';
import { fileURLToPath } from 'url';
const __dirname = path.dirname(fileURLToPath(import.meta.url));

const app = http.createServer((req, res) => {
let rootpath = __dirname;
if (os.platform() === 'darwin' || os.platform() === 'linux')
 rootpath = path.join(process.env.HOME, './');


let pathname = url.parse(req.url).pathname;
pathname = pathname == '/' ? '/default.html' : pathname;
let realPath = path.join(__dirname, 'public' + pathname);
let type = mime.getType(realPath);
fs.readFile(realPath, (error, result) => {
if (error != null) {
res.writeHead(404, { 'content-type': 'text/html;charset=utf8' });
res.end('文件读取失败');
} else {
res.writeHead(200, {
'content-type': type
});
res.end(result);
};
});
});
// 监听 3000 端口
app.listen(3000);
console.log('服务器已启动，监听 3000 端口，请访问 localhost:3000');