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. poj3233之经典矩阵乘法

    Matrix Power Series Time Limit: 3000MS   Memory Limit: 131072K Total Submissions: 12346   Accepted:  ...

  2. 全国计算机等级考试二级教程-C语言程序设计_第5章_循环结构

    for循环结构的嵌套 外层循环每循环一次,内层循环会完整循环一次. 外层循环是竖. 内层循环是横. for, do...while, while的选择: 如果有固定次数,如阶乘! ,判断素数,用 fo ...

  3. [转!]jQuey中的return false作用是什么

    jQuey中的return false作用是什么: 在众多的语句中都有return false的使用,当然对于熟悉它的开发者来说,当然是知根知底,知道此语句的作用,当然也就知道在什么时候使用此语句,不 ...

  4. Python学习入门基础教程(learning Python)--8.1 字典数据添加与删除

             1. 字典数据添加 这个很简单,像赋值那样一项项赋值即可.语法结构如下 dict_obj[key] = value 添加数据项示例如下 >>> d1 = {'cod ...

  5. WisDom .net 工作流设计流程

    1.简单说明       工作流( Foundare WorkFlow)说白了就是工作流程的一些计算机模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计 ...

  6. 反编译C#的dll文件并修改,再重新生成dll

    1.把dll文件导入到ildasm工具中,ildasm是由微软提供的.net程序反编译工具,位于“C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A ...

  7. DataTable转换为LIST

    public List<string[]> SetList(DataTable dt)        {            List<string[]> list = ne ...

  8. Android周笔记(9.8-14)(持续更新)

    本笔记记录一周内的小知识点和一些心学习的Demo. 1.PopupWindow: new 一个activity_pop_window:id为popwindow的Button,id为hello123的T ...

  9. Android WebView 小结

    1.设置网页的缩放比例的时候,可以使用以下属性: mWebview.setInitialScale(25);//为25%,最小缩放等级 WebSettings setting = mWebview.g ...

  10. HTML5 canvas绘制线条曲线

    HTML5 canvas入门 线条例子 1.简单线条 2.三角形 3.填充三角形背景颜色 4.线条颜色以及线条大小 5.二次贝塞尔曲线 6.三次贝塞尔曲线 <!doctype html> ...