1.parse函数的基础用法

parse函数的作用是解析url,返回一个json格式的数组,请看如下示例:

  1. var url = require('url');
  2. url.parse('http://www.baidu.com');

运行结果:

  1. { protocol: 'http:',
  2. slashes: null,
  3. auth: null,
  4. host: null,
  5. port: null,
  6. hostname: null,
  7. hash: null,
  8. search: null,
  9. query: null,
  10. pathname: 'www.baidu.com',
  11. path: 'www.baidu.com',
  12. href: 'http://www.baidu.com' }

2.parse函数 —— 条件解析

parse函数的第二个参数是布尔类型,当参数为true时,会将查询条件也解析成json格式的对象。

  1. var url = require('url');
  2. url.parse('http://www.baidu.com?page=1',true);

运行结果:

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

3.parse函数 —— 解析主机

parse函数的第三个参数也是布尔类型的,当参数为true,解析时会将url的"//"和第一个"/"之间的部分解析为主机名,示例如下:

  1. var url = require('url');
  2. url.parse('http://www.baidu.com/news',false,true);

运行结果:

  1. { protocol: 'http:',
  2. slashes: true,
  3. auth: null,
  4. host: 'www.baidu.com',
  5. port: null,
  6. hostname: 'www.baidu.com',
  7. hash: null,
  8. search: null,
  9. query: null,
  10. pathname: '/news',
  11. path: '/news',
  12. href: 'http://www.baidu.com/news' }
  13. 较之前面的示例,host的内容不再是null了。

4.format函数的基础用法

format函数的作用与parse相反,它的参数是一个JSON对象,返回一个组装好的url地址,请看如下示例:

  1. var url = require('url');
  2. url.format({
  3. protocol: 'http:',
  4. hostname:'www.baidu.com',
  5. port:'80',
  6. pathname :'/news',
  7. query:{page:1}
  8. });

运行结果:

  1. http://www.baidu.com/news?page=1

参数JSON对象的字段跟parse函数解析后返回的JSON字段一一对应。

5.resolve函数的基础用法

resolve函数的参数是两个路径,第一个路径是开始的路径或者说当前路径,第二个则是想要去往的路径,返回值是一个组装好的url,示例如下:

  1. var url = require('url');
  2. url.resolve('http://example.com/', '/one') // 'http://example.com/one'
  3. url.resolve('http://example.com/one', '/two') // 'http://example.com/two'

node.js(三)url处理的更多相关文章

  1. node.js获取url中的各个参数

    实例代码test.js var http=require('http'); var url=require('url'); var querystring=require('querystring') ...

  2. Node.js:url

    在node运行环境中输入url: > url url { parse: [Function: urlParse], resolve: [Function: urlResolve], resolv ...

  3. node.js处理url常用方法

    处理非阻塞I/O /* *回调函数的方法 异步 */ /* function f(cb){ fs.readFile('./4',(err,data)=>{ cb(data.toString()) ...

  4. [读书笔记]了不起的node.js(三)

    这周的nodejs学习内容为几个依赖包的使用,把书上的例子都敲了一遍.这篇就以例程为线索,复习一下一周的工作. 1.connect 这个例程主要是使用connect依赖包,connect提供一个中间件 ...

  5. 34.node.js之Url & QueryString模块

    转自:https://i.cnblogs.com/posts?categoryid=1132005&page=6//引用 var url = require("url"); ...

  6. Node.js的url模块简介

    什么是URL URL是Uniform Location Resource的缩写,翻译为“统一资源定位符”,也就是描述资源位置的固定表示方法.被URL描述的资源可以位于互联网上,也可以位于本地. URL ...

  7. Node.js中url的详解

    var url = require('url');var str = 'http://zhufengnodejs:123@github.com:80/2016jsnode?name=zfpx& ...

  8. node.js 的url模块

    var URL = require('url');  var testUrl = "http://www.baidu.com:8080/index.php?content=abc" ...

  9. 从零开始学习Node.js例子一 http get和post

    httpserverrequestget.js /* 获取GET请求内容 由于GET请求直接被嵌入在路径中,URL是完整的请求路径,包括了?后面的部分,因此你可以手动解析后面的内容作为GET请求的参数 ...

随机推荐

  1. [置顶] Codeforces Round #190 (Div. 2)(完全)

    好久没有写博客了,一直找不到有意义的题可以写,这次也不算多么有意义,只是今天是比较空的一天,趁这个时候写一写. A. B. 有一点贪心,先把每个拿去3的倍数,余下0或1或2,然后三个一起拿. 对于以上 ...

  2. IE6下a标签上发送ajax请求总是error

    IE6下真是处处是坑啊!!!走过了一个又一个坑,记录一下吧. 之前不知道a标签上注册click事件之后,发送ajax请求总是error.后来经过几番网上搜索,终于找到高人遇到此坑的解决办法.原来是a标 ...

  3. struts 2 debug标签隐藏不显示

    struts2 的标签debug在页面中应用,并且struts的配置文件中也设置为开发模式,但是这个标签却被隐藏了,究其原因,是因为页面中body元素生命了class,其样式覆盖了原来的样式. 比如: ...

  4. DBSCAN(Density-based spatial clustering of applications with noise)

    Density-based spatial clustering of applications with noise (DBSCAN) is a data clustering algorithm ...

  5. 关于UIScrollView属性跟方法的总结

    iOS中UIScollView的总结 在iOS开发中可以说UIScollView是所有滑动类视图的基础,包括UITableView,UIWebView,UICollectionView等等,UIScr ...

  6. 对FineU框架Grid多表头合计行导出Excel的回顾

    年前用FineUI开发遇到了这样一个问题,Grid多表头合计行不能导出,后面到官方示例找了一下,庆幸的是找到了多表头的导出示例.然后当时为了省事,直接就复制粘贴完事,也没有仔细的研究代码.后来运行一看 ...

  7. blog开篇

    本来是写java学习开篇的,现在就把它改为博客开篇吧. 其实一直都想着记录一下自己学习的过程,或者说是借口,一直在忙,也从重庆辗转到广州,又从广州辗转到天津了,又一个新阶段开始了,猴年马月都到了,哈哈 ...

  8. aspnetpager分页,不使用存储过程

    一.前台显示界面代码Default.aspx(注意,代码运行环境是VS.2005) <%@ Page Language="C#" AutoEventWireup=" ...

  9. Spring随笔 - 事务隔离级别

    Spring提供5中事务隔离级别: ISOLATION_DEFAULT:使用数据库后端的默认隔离级别. ISOLATION_READ_UNCOMMITTED:允许读取尚未提交的数据变更.可能会导致脏读 ...

  10. js问题学习

    1.前言为了node.js做准备,js的基本功还是很重要的.所以正值1024程序员节的时候所以找了些题目,整理了一下知识点.这篇文章感觉代码太多,难免枯燥,所以文章最后留了个彩蛋给读者. 2.简单回调 ...