不能在Node.js上使用URL模块,不能调用未定义的方法“parse”

我试图从URL中获取参数,例如:

http://localhost:8888/?name=test 

要获得name参数,我看到了一些使用url模块的示例:

 var url = require('url'); var urlParts = url.parse(request.url, true); var query = urlParts.query; 

所以,首先我运行这个命令npm install url ,也依赖于package.json文件,但我总是得到这个错误:

 TypeError: Cannot call method 'parse' of undefined at C:\Users\Administrator\git\test\app.js:28:7 

以前有人遇到这个问题吗?

我发现这个问题,我有这样的代码:

 var http = require("http"); var url = require('url'); http.createServer(function(request, response) { var urlParts = url.parse(request.url, true); var query = urlParts.query; }).listen(appport); 

url对象在createServer函数里面是不可访问的(不知道为什么),所以我只是把这行代替了:

 var urlParts = url.parse(request.url, true); 

有了这个:

 var url_urlParts = require('url').parse(request.url, true); 

现在工作正常。

这一点也是我 – 我的问题是, url.parse与本地var url冲突。 我解决了这个问题:

 import { parse as urlparse } from 'url' var url = 'https://localhost:80' var parsed_url = urlparse(url) 

感谢@loganfsmyth的洞察力!