博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
url模块和querystring模块
阅读量:5025 次
发布时间:2019-06-12

本文共 1815 字,大约阅读时间需要 6 分钟。

url模块

我们可以使用.parse方法来将一个URL字符串转换为URL对象,示例如下。

 

1. URL各部分说明

 

var url = require('url'); //加载url模块url.parse('http://www.baidu.com');

返回的结果为:

{ protocol: 'http:',  slashes: null,  auth: null,  host: null,  port: null, hostname: null, hash: null, search: null, query: null, pathname: 'www.baidu.com', path: 'www.baidu.com', href: 'http://www.baidu.com' } parse函数的第二个参数是布尔类型,当参数为true时,会将查询条件query也解析成json格式的对象

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

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' } protocol: 请求协议   host: URL主机名已全部转换成小写, 包括端口信息   auth:URL中身份验证信息部分   hostname:主机的主机名部分, 已转换成小写   port: 主机的端口号部分   pathname: URL的路径部分,位于主机名之后请求查询之前   search: URL 的“查询字符串”部分,包括开头的问号。   path: pathname 和 search 连在一起。   query: 查询字符串中的参数部分(问号后面部分字符串),或者使用 querystring.parse() 解析后返回的对象。   hash: URL 的 “#” 后面部分(包括 # 符号)

format方法允许将一个URL对象转换为URL字符串,示例如下。

代码如下:
url.format({
    protocol: 'http:',
    host: 'www.example.com',
    pathname: '/p/a/t/h',
    search: 'query=string'
});
/* =>
'http://www.example.com/p/a/t/h?query=string'
*/
.resolve方法可以用于拼接URL,示例如下。
代码如下:
url.resolve('http://www.example.com/foo/bar', '../baz');
/* =>
 
http://www.example.com/baz
 
*/

 

querystring模块

 "QueryString" 模块用于实现URL参数字符串与参数对象的互相转换,来个栗子,如下所示:

 

 

 
复制代码代码如下:
 var url = require('url');
 var qs = require('querystring');
 var queryUrl = " " ;
 queryUrl = url.parse(queryUrl).query ;
 console.log(queryUrl) ;
 console.log(qs.parse(queryUrl)) ;

  运行结果·如下:

    name=bigbear&memo=helloworld
    {
      name: 'bigbear',
      memo: 'helloworld'
    }
 

 

转载于:https://www.cnblogs.com/yymb/p/5760472.html

你可能感兴趣的文章
在Vs2012 中使用SQL Server 2012 Express LocalDB打开Sqlserver2012数据库
查看>>
在Macos下完美解决Adobe Dreamweaver CC 2018 汉化及操作方法
查看>>
【转】 Newtonsoft.Json高级用法
查看>>
CodeBlocks X64 SVN 编译版
查看>>
Excel催化剂开源第42波-与金融大数据TuShare对接实现零门槛零代码获取数据
查看>>
bug记录_signalr执行$.connnection.testhub结果为空
查看>>
【转】常用的latex宏包
查看>>
[TMS320C674x] 一、GPIO认识
查看>>
酷狗的皮肤文件存放在哪
查看>>
iOS RunLoop简介
查看>>
C++的引用
查看>>
T-SQL查询进阶--深入浅出视图
查看>>
MapKeyboard 键盘按键映射 机械革命S1 Pro-02
查看>>
Android读取url图片保存及文件读取
查看>>
完整ASP.Net Excel导入
查看>>
判断CPU大小端示例代码
查看>>
ARTS打卡第13周
查看>>
循环队列的运用---求K阶斐波那契序列
查看>>
pta 编程题14 Huffman Codes
查看>>
初始化bootstrap treeview树节点
查看>>