NODE.JS - 使用URL.parse传递路径名

时间:2016-01-12 22:05:35

标签: javascript node.js http url-routing

在下面的代码中我创建了一个API,我想传递一个路径名并使用switch语句检查它以传递GET,POST等。

但似乎我做错了,因为它似乎没有传递路径名,而是localhost:8080 ..

var http = require('http');
var URL = require('URL');

var server = http.createServer(function (req, res) {
    var parsedURL = URL.parse(req.URL, true);

    switch (parsedURL) {
        case '/api/something':
        if (parsedURL.query.id) {
            findProductById(id, req, res);
        }
        else {
            findAll(req, res);
        }
        break;
        default;
        res.end('End of connection');
    }
});
server.listen(8080);
console.log("Running");  

我做错了什么?我是否正确使用了URL?或者错过了解析的东西?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

您的要求应如下所示:

var URL = require('url');

Node无法找到合适的模块,它全都是小写的。

此外,switch案例中的默认语句使用了不正确的语法。尝试:

default: res.end('End of connection');