Guest User

Untitled

a guest
Nov 25th, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.16 KB | None | 0 0
  1. const fs=require('fs');
  2. const mong=require('mongoose');
  3. const express=require('express');
  4. const app=express();
  5. const dotenv=require('dotenv').config();
  6. const http=require('http');
  7. const path=require('path')
  8. const chalk=require('chalk')
  9.  
  10. http.createServer((req, res)=>{
  11.  
  12.  
  13. if(req.method=="GET") {
  14.  
  15. function isAccess(url){
  16. let bool=0;
  17. new Promise((res, rej)=>{
  18. fs.access(__dirname+url, fs.constants.F_OK, function(err){
  19. bool= err ? false : true;
  20. // console.log( bool, url, req.method)
  21. res(bool)
  22. })
  23. }).then(bool=>{
  24. // console.log('bool'+': '+chalk.red(bool) );
  25. if(!bool){
  26. res.writeHead(404, {'Content-type':'text/plain; charset=utf-8'});
  27. res.end(req.url+" 404 Страница не найдена ")
  28. }
  29. })
  30. }
  31. isAccess(req.url);
  32.  
  33. switch(path.extname(req.url)){
  34. case "":res.writeHead(200, {"Content-type":"text/html"}); fs.createReadStream(__dirname+"/index.html").pipe(res); break;
  35. case ".html":res.writeHead(200, {"Content-type":"text/html"}); fs.createReadStream(__dirname+req.url).pipe(res); break;
  36. case ".css":res.writeHead(200, {"Content-type":"text/css"});fs.createReadStream(__dirname+req.url).pipe(res); break;
  37. case ".js": res.writeHead(200, {"Content-type":"text/javascript"}); fs.createReadStream(__dirname+req.url).pipe(res); break;
  38. default :res.writeHead(200, {"Content-type":'text/html; charset=utf-8'});res.end("<h1>404 Страница не найдена h1 </h1>")
  39. }
  40.  
  41. } else{
  42. let temp='';
  43. req.on('data', (chunk)=> {
  44. temp+= chunk;
  45. // console.log( req.method,req.url, temp )
  46. });
  47. req.on('end', () => {
  48. if(temp){
  49. try {
  50. console.log(chalk.green(temp));
  51. res.write(temp+'1111111');
  52. res.end(temp+'1111111');
  53. } catch(e) {
  54. console.log(e);
  55. }
  56. }
  57.  
  58. })
  59. // fs.createReadStream(__dirname+'/package.json').pipe(res);
  60. }
  61.  
  62.  
  63.  
  64. })
  65. .listen(process.env.PORT, ()=>{
  66. let time=` ${(new Date).getHours()}:${(new Date).getMinutes()}`;
  67. console.log(`Сервер запустился на порту ${process.env.PORT} в ${chalk.blue.inverse(time)}`);
  68. })
Advertisement
Add Comment
Please, Sign In to add comment