📅  最后修改于: 2023-12-03 15:21:31.600000             🧑  作者: Mango
在 Node.js 中,有一个常用的模块是 url
模块,用于解析 URL 地址。但是在当前版本的 Node.js 中,url.parse
方法已经被弃用了。下面我们来介绍为什么不推荐使用 url.parse
。
在之前版本的 Node.js 中,url.parse
方法可以取到以下属性:
protocol
:URL 协议(例如 http,https)auth
:URL 认证信息hostname
:URL 主机名port
:URL 端口号pathname
:URL 路径search
:URL 查询参数(例如 ?a=1&b=2)hash
:URL 锚点但是在当前版本的 Node.js 中,url.parse
被废弃了,使用会得到以下警告:
DeprecationWarning: 'url.parse' is deprecated: Use `new URL()` instead.
替代方案是使用 new URL()
,该方法是构造函数方法,用于解析 URL 地址。例如:
const myURL = new URL('https://www.example.com/foo/bar?baz=qux#test');
console.log(myURL.hostname); // 'www.example.com'
console.log(myURL.pathname); // '/foo/bar'
console.log(myURL.search); // '?baz=qux'
console.log(myURL.hash); // '#test'
new URL
方法中也有与 url.parse
相同的属性,但是使用更加方便。
需要注意的是,new URL()
方法只支持浏览器和 Node.js 10.x 及以上版本。如果需要在较旧的版本上使用,仍然需要使用 url.parse
方法。
url.parse
方法已经被废弃,建议使用更加方便的 new URL()
方法代替。但是在较旧的版本上,仍然需要使用 url.parse
方法。
在 Node.js 中,有一个常用的模块是 url
模块,用于解析 URL 地址。但是在当前版本的 Node.js 中,url.parse
方法已经被弃用了。下面我们来介绍为什么不推荐使用 url.parse
。
在之前版本的 Node.js 中,url.parse
方法可以取到以下属性:
protocol
:URL 协议(例如 http,https)auth
:URL 认证信息hostname
:URL 主机名port
:URL 端口号pathname
:URL 路径search
:URL 查询参数(例如 ?a=1&b=2)hash
:URL 锚点但是在当前版本的 Node.js 中,url.parse
被废弃了,使用会得到以下警告:
DeprecationWarning: 'url.parse' is deprecated: Use
new URL()
instead.
替代方案是使用 new URL()
,该方法是构造函数方法,用于解析 URL 地址。例如:
const myURL = new URL('https://www.example.com/foo/bar?baz=qux#test');
console.log(myURL.hostname); // 'www.example.com'
console.log(myURL.pathname); // '/foo/bar'
console.log(myURL.search); // '?baz=qux'
console.log(myURL.hash); // '#test'
new URL
方法中也有与 url.parse
相同的属性,但是使用更加方便。
需要注意的是,new URL()
方法只支持浏览器和 Node.js 10.x 及以上版本。如果需要在较旧的版本上使用,仍然需要使用 url.parse
方法。
url.parse
方法已经被废弃,建议使用更加方便的 new URL()
方法代替。但是在较旧的版本上,仍然需要使用 url.parse
方法。