url - URL
url
模块用于处理与解析 URL。 使用方法如下:
const url = require('url');
属性
1.url.href
获取及设置序列化的 URL。
const myURL = new URL('https://example.org/foo');
console.log(myURL.href);
// (获取) 打印 https://example.org/foo
myURL.href = 'https://example.com/bar';
console.log(myURL.href);
//(修改) 打印 https://example.com/bar
获取 href
属性的值等同于调用 url.toString()
。
2.url.host
获取及设置 URL 的主机部分。
3.url.hostname
获取及设置 URL 的主机名部分。
url.host
和 url.hostname
之间的区别是 url.hostname
不包含端口。
const url = require('url');
const myUrl = new URL('http://mywebsite.com:8000/hello.html?id=100&status=active');
console.log(myUrl.host); // 打印 mywebsite.com:8000
console.log(myUrl.hostname); // 打印 mywebsite.com
4.url.pathname
获取及设置 URL 的路径部分。
const url = require('url');
const myUrl = new URL('http://mywebsite.com:8000/hello.html?id=100&status=active');
console.log(myUrl.pathname); // 打印 /hello.html
5.url.search
获取及设置 URL 的序列化查询部分。
const url = require('url');
const myUrl = new URL('http://mywebsite.com:8000/hello.html?id=100&status=active');
console.log(myUrl.search); // 打印 ?id=100&status=active
6.url.searchParams
获取表示 URL 查询参数的对象。
const url = require('url');
const myUrl = new URL('http://mywebsite.com:8000/hello.html?id=100&status=active');
console.log(myUrl.searchParams);
// 打印 URLSearchParams { 'id' => '100', 'status' => 'active' }
方法
1.urlSearchParams.append(name, value)
在查询字符串中附加一个新的键值对。
const url = require('url');
const myUrl = new URL('http://mywebsite.com:8000/hello.html?id=100&status=active');
myUrl.searchParams.append('abc', '123');
console.log(myUrl.searchParams);
// 打印 URLSearchParams { 'id' => '100', 'status' => 'active', 'abc' => '123' }
2.urlSearchParams.forEach(fn[, thisArg])
在查询字符串中迭代每个键值对,并调用给定的函数。
const url = require('url');
const myUrl = new URL('http://mywebsite.com:8000/hello.html?id=100&status=active');
myUrl.searchParams.forEach((value, key) => {
console.log(`${key}:${value}`);
})
//id:100
//status:active
);
myUrl.searchParams.forEach((value, key) => {
console.log(`${key}:${value}`);
})
//id:100
//status:active