server.js 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. const http = require('http');
  2. const fs = require('fs');
  3. const path = require('path');
  4. const server = http.createServer((req, res) => {
  5. let filePath = req.url === '/' ? '/index.html' : req.url;
  6. filePath = path.join(__dirname, filePath);
  7. const extname = path.extname(filePath);
  8. let contentType = 'text/html';
  9. switch (extname) {
  10. case '.js':
  11. contentType = 'text/javascript';
  12. break;
  13. case '.css':
  14. contentType = 'text/css';
  15. break;
  16. case '.json':
  17. contentType = 'application/json';
  18. break;
  19. }
  20. fs.readFile(filePath, (err, content) => {
  21. if (err) {
  22. if (err.code === 'ENOENT') {
  23. res.writeHead(404);
  24. res.end('文件未找到');
  25. } else {
  26. res.writeHead(500);
  27. res.end('服务器错误');
  28. }
  29. } else {
  30. res.writeHead(200, { 'Content-Type': contentType });
  31. res.end(content, 'utf-8');
  32. }
  33. });
  34. });
  35. const PORT = 8080;
  36. server.listen(PORT, () => {
  37. console.log(`服务器运行在 http://localhost:${PORT}`);
  38. });