readFile.js 1.2 KB

1234567891011121314151617181920212223242526272829303132
  1. module.exports = function (request, response, url, path) {
  2. var fs = require('fs')
  3. var staticPath = "./www/";
  4. var pathName = url.parse(request.url).pathname,
  5. realPath = path.join(staticPath, pathName); // 请求文件的在磁盘中的真实地址
  6. fs.exists(realPath, (exists) => {
  7. if (!exists) {
  8. // 当文件不存在时
  9. response.writeHead(404, { "Content-Type": "text/plain" });
  10. response.write("This request URL ' " + realPath + " ' was not found on this server.");
  11. response.end();
  12. } else {
  13. // 当文件存在时
  14. fs.readFile(realPath, (err, file) => {
  15. if (err) {
  16. // 文件读取出错
  17. response.writeHead(500, { "Content-Type": "text/plain" });
  18. response.end(err);
  19. } else {
  20. // 当文件可被读取时,输出文本流
  21. response.writeHead(200, { "Content-Type": "text/plain" });
  22. response.write(file, "binary");
  23. response.end();
  24. }
  25. });
  26. }
  27. });
  28. }