var url =  require("url")

url模块提供的三个方法:

url.parse(urlStr[, parseQueryString][, slashesDenoteHost])

输入 URL 字符串,返回一个对象

将第二个参数设置为 true 则使用 querystring 模块来解析 URL 中的查询字符串部分,默认为 false

将第三个参数设置为 true 来把诸如 //foo/bar 这样的URL解析为 { host: ‘foo’, pathname: ‘/bar’ } 而不是 { pathname: ‘//foo/bar’ }。 默认为 false

var url = require('url')
var href = 'http://user:pass@host.com:8080/p/a/t/h?query=string#hash'
console.log(url.parse(href)) Url {
protocol: 'http:',
slashes: true,
auth: 'user:pass',
host: 'host.com:8080',
port: '8080',
hostname: 'host.com',
hash: '#hash',
search: '?query=string',
query: 'query=string',
pathname: '/p/a/t/h',
path: '/p/a/t/h?query=string',
href: 'http://user:pass@host.com:8080/p/a/t/h?query=string#hash' }

href: 所解析的完整原始 URL。协议名和主机名都已转为小写
protocol: 请求协议,小写
host: URL主机名已全部转换成小写, 包括端口信息
auth:URL中身份验证信息部分
hostname:主机的主机名部分, 已转换成小写
port: 主机的端口号部分
pathname: URL的路径部分,位于主机名之后请求查询之前
search: URL 的“查询字符串”部分,包括开头的问号
path: pathname 和 search 连在一起
query: 查询字符串中的参数部分(问号后面部分字符串)
hash: URL 的 “#” 后面部分(包括 # 符号)

url.format(urlObj)

输入一个 URL 对象,返回格式化后的 URL 字符串

url.resolve(from, to)

给定一个基URL路径,和一个href URL路径,并且象浏览器那样处理他们可以带上锚点

url.resolve('/one/two/three', 'four')         // '/one/two/four'
url.resolve('http://example.com/', '/one') // 'http://example.com/one'
url.resolve('http://example.com/one', '/two') // 'http://example.com/two'

最新文章

  1. MySQL修改root密码的多种方法
  2. SELECT (Transact-SQL)
  3. eclipse升级,导入旧版eclipse的插件[转]
  4. 翻译:Angular 2 - TypeScript 5 分钟快速入门
  5. Java [Leetcode 171]Excel Sheet Column Number
  6. BZOJ 2763
  7. Java Concurrency - synchronized 关键字
  8. iOS UIView指定显示摸一个角弧形显示
  9. C#中new和override的区别
  10. 【FZU】2152 文件系统
  11. Java IO设计模式(装饰模式与适配器模式)
  12. Linux之内存描述符mm_struct
  13. Redis数据库高级实用特性:持久化机制
  14. spark与kafka集成进行实时 nginx代理 这种sdk埋点 原生日志实时解析 处理
  15. MYSQL数据库字母数字混合字段排序问题
  16. Python+Selenium学习--下拉框处理
  17. python 集合交补
  18. 浅析JavaScript访问对象属性和方法及区别
  19. JavaScript的性能优化:加载和执行
  20. redis之(九)redis的事务机制

热门文章

  1. eclipse没有(添加)"Dynamic Web Project"选项的方法
  2. 在VMware下安装CentOS系列1:配置VMware
  3. C#根据Type获取默认值
  4. wepy 实现 用户名登录与短信验证码登录
  5. window窗口的各种宽高
  6. 带有button而且能够运行单击事件的WINFORM窗口,体悟C#的创建过程
  7. JDK动态proxy原理解析
  8. Java基础教程:多线程基础(3)——阻塞队列
  9. PAT 甲级 1005. Spell It Right (20) 【字符串】
  10. 20145239杜文超 《Java程序设计》第4周学习总结