@Wangww0925
2019-08-07T08:03:20.000000Z
字数 2271
阅读 347
NodeJs
parse(参数1,参数2,参数3) - 获取路径JSON对象以下通过该链接为例: http://LOCALhost:3000/aa/bb/index.html?name=laowang&age=100#bookquery - 常用,查询信息【不包括问号】,例:name=laowang&age=100 【使用 querystring.parse() 解析后返回的对象】pathname - 常用,路径 【不包括参数】,例:/aa/bb/index.htmlprotocol - 请求协议,例:httpslashes -auth - URL中身份验证信息host - 主机名 + 端口号 【小写格式】,例:localhost:3000port - 端口号,例:3000hostname - 主机名 【小写格式】,例:localhosthash - 锚点 【 URL #后面部分,包括 #】 ,例:#booksearch - 查询信息 【包括问号】 ,例: ?name=laowang&age=100path - pathname + search ,例: /aa/bb/index.html?name=laowang&age=100href - 完整路径,例:http://localhost:3000/aa/bb/index.html?name=laowang&age=100#bookformat() - 拼接路径resolve(from,to) - 重定向路径resolveObjectUrlURLURLSearchParamsdomainToASCIIdomainToUnicode
参数1: url(字符串)
参数2: 布尔值,默认false ,true - 返回对象中query的属性为一个对象
参数3: 布尔值,解析主机处理 一般情况下使用不到
只有url.parse(reqUrl,true);是返回对象,才可以访问对象中的数据
var url = require("url");var reqUrl = "http://localhost:3000/aa/bb/index.html?name=laowang&age=100#book";var url1 = url.parse(reqUrl);var url2 = url.parse(reqUrl,false);var url3 = url.parse(reqUrl,true);/*** url1 url2 返回路径JSON对象,url3 返回路径对象{protocol: 'http:',slashes: true,auth: null,host: 'localhost:3000',port: '3000',hostname: 'localhost',hash: '#book',search: '?name=laowang&age=100',query: 'name=laowang&age=100',pathname: '/aa/bb/index.html',path: '/aa/bb/index.html?name=laowang&age=100',href:'http://localhost:3000/aa/bb/index.html?name=laowang&age=100#book'}*/// 访问对象中的数据,验证三种方式获得结果console.log(url1.query.name); // undefindeconsole.log(url2.query.name); // undefindeconsole.log(url3.query.name); // laowang
var url = require("url");var strUrl = url.format({protocol: 'http:',slashes: true,port: '3000',hostname: 'localhost',hash: '#book',// search: '?name=laowang&age=100',query: { name: 'laowang', age: '100' }, // 删除search后,此处必须为对象pathname: '/index.html'})console.log(strUrl); // http://localhost:3000/index.html?name=laowang&age=100#book
form: 开始的路径或者说当前路径
to: 想要去往的路径
返回一个组装好的url
只能重定向路径名,不能重定向域名
var url = require("url");// 同域名之下切换路径 -- 常用console.log(url.resolve("http://www.baidu.com/aa","bb")); // http://www.baidu.com/bb// 不同域名之下 取后面的参数作为返回值console.log(url.resolve("1223","5")); // 5
作者 wendy
2019 年 1月 21日