Lyrics


< More and better />


node--url模块

url 模块

1.parse() 解析url ,返回一个 json 格式数组

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var url = require('url');
console.log(url.parse("localhost:3000/xampp"));//
//输出
{ protocol: 'localhost:',
slashes: null,
auth: null,
host: '3000',
port: null,
hostname: '3000',
hash: null,
search: null,
query: null,
pathname: '/xampp',
path: '/xampp',
href: 'localhost:3000/xampp' }
  1. parse 函数 —条件解析

设置 true 和false 查询条件有差异,true : query: { page: ‘1’ },,false query: ‘page=1’
parse函数的第二个参数是布尔类型,当参数为true时,会将查询条件也解析成json格式的对象。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var url = require('url');
url.parse('http://www.baidu.com?page=1',true);
// { protocol: 'http:',
slashes: true,
auth: null,
host: 'www.baidu.com',
port: null,
hostname: 'www.baidu.com',
hash: null,
search: '?page=1',
query: { page: '1' },
pathname: '/',
path: '/?page=1',
href: 'http://www.baidu.com/?page=1' }

  1. parse –解析主机 host(主机名)

将“//‘和 第一个 ‘/‘ 之间解析为主机名 host

三个参数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var url = require('url');
url.parse('http://www.baidu.com/news',false,true);
//输出
{ protocol: 'http:',
slashes: true,
auth: null,
host: 'www.baidu.com',
port: null,
hostname: 'www.baidu.com',
hash: null,
search: null,
query: null,
pathname: '/news',
path: '/news',
href: 'http://www.baidu.com/news' }

  1. format 函数,作用与parse 相反,参数是JSON对象,返回一个组装好的url 地址

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    var url = require("url");
    var tempUrl=url.format({
    protocol:'http:',
    hostname :'www.baidu.com',
    port:'80',
    pathname : '/news',
    query:{page:1}
    });
    console.log(tempUrl);//http://www.baidu.com/news?page=1
    5. resolve 组装 url ,拼接

    var url = require(‘url’);

    url.resolve(‘http://example.com/‘, ‘/one’) // ‘http://example.com/one
    url.resolve(‘http://example.com/one‘, ‘/two’) // ‘http://example.com/two
    ```