2017-12-27 406 views
-1

我编写了一个非常简单的程序来演示Node中的请求处理(实际上是遵循教程),但服务器似乎需要永远回应GET /请求。这里是我使用的代码:节点花费太多时间来响应

const http = require('http'); 
const url = require('url'); 

let routes = { 
    'GET': { 
     '/': (req, res) => { 
      res.writeHead(200, {'Content-type': 'text/html'}); 
      res.end('GET /'); 
     } 
    }, 
    'POST': { 

    }, 
    'NA': (req, res) => { 
     res.writeHead(404); 
     res.end('Content not found'); 
    } 
} 

function router(req, res) { 
    let baseURI = url.parse(req.url, true); 
    // the function that gets resolved and used to handle the request 
    let resolveRoute = routes[req.method][baseURI.pathname]; 
} 

http 
    .createServer(router).listen(3001,() => { 
     console.log('Listening on port 3001'); 
    }); 

我做错了什么?

回答

0

自己找到了。

我正在解决处理函数,但没有调用它。将resolveRoute(req, res);添加到router()函数的末尾可使其正常工作。 :)

相关问题