node.js的querystring模块
querystring主要是用于对字符串进行操作和解析。共有四个方法:querystring.parse,querystring.stringify,querystring.escape,querystring.unescape。
使用querystring前先requery进来:const querystring = require("querystring");
然后可以使用上述的四个方法:
1.querystring.parse方法:字符串反序列化为一个对象
querystring.parse(str,separator,eq,options)
1)str是需要被反序列化的字符串;
2)separator是分割字符(默认是‘&’),可以省略;
3)eq是用于划分键和值的符号(比如:name=sophiehui,可以省略,默认是‘=’);
4)options用来设置maxKeys和decodeURIComponent这两个属性,maxKeys用来设置最多可以解析多少对键值对,传一个number值,默认为1000,如果传入一个0,则不限制键值对的数量;decodeURIComponent用于对含有%的字符串进行解码,默认值是querystring.unescape。
例如:querystring.parse("name=sophiehui&interest="music"&interest="reading","&","=",{maxKeys:2});返回值为:{ name: 'whitemu', sex: 'man' }
2.querystring.stringify:序列化一个对象为字符串
querystring.stringify(obj,separator,eq,options)
1)obj:需要被序列化的对象;
2)separator是分割字符(默认是‘&’),可以省略;
3)eq是用于划分键和值的符号(比如:name=sophiehui,可以省略,默认是‘=’);
4)options传入一个对象,用于设置encodeURIComponent属性,encodeURIComponent是一个functong,将一个不安全的url设置为百分比的形式(默认值为querystring.escape())
例如:querystring.stringify({name: 'sophiehui', interest: [ 'music', 'reading' ] },"&","=");返回值为:'name&sophiehui=interest&music=interest&reading'
3.querystring.escape:对传入的%字符串进行编码
querystring.escape(str)
querystring.escape("name=2,6");返回'name%3D2%3C6'
4.querystring.unescape:对传入的%字符串进行解码
querystring.unescape(str)
querystring.unescape("name%3D2%3C6");返回"name=2,6"
node.js的querystring模块的更多相关文章
- Node.js之querystring模块
querystring从字面上的意思就是查询字符串,一般是对http请求所带的数据进行解析.querystring模块只提供4个方法,在我看来,这4个方法是相对应的. 这4个方法分别是querystr ...
- 利用Node.js的Net模块实现一个命令行多人聊天室
1.net模块基本API 要使用Node.js的net模块实现一个命令行聊天室,就必须先了解NET模块的API使用.NET模块API分为两大类:Server和Socket类.工厂方法. Server类 ...
- Node.js的Formidable模块的使用
今天总结了下Node.js的Formidable模块的使用,下面做一些简要的说明. 1) 创建Formidable.IncomingForm对象 var form = new formidab ...
- Node.js入门:模块机制
CommonJS规范 早在Netscape诞生不久后,JavaScript就一直在探索本地编程的路,Rhino是其代表产物.无奈那时服务端JavaScript走的路均是参考众多服务器端语言来 ...
- Node.js的net模块
net模块提供了一个异步网络包装器,用于TCP网络编程,它包含了创建服务器和客户端的方法 创建TCP服务器 net.createServer方法 创建客户端去连接服务器 net.connect方法 简 ...
- node.js中express模块创建服务器和http模块客户端发请求
首先下载express模块,命令行输入 npm install express 1.node.js中express模块创建服务端 在js代码同文件位置新建一个文件夹(www_root),里面存放网页文 ...
- node.js中ws模块创建服务端和客户端,网页WebSocket客户端
首先下载websocket模块,命令行输入 npm install ws 1.node.js中ws模块创建服务端 // 加载node上websocket模块 ws; var ws = require( ...
- node.js中net模块创建服务器和客户端(TCP)
node.js中net模块创建服务器和客户端 1.node.js中net模块创建服务器(net.createServer) // 将net模块 引入进来 var net = require(" ...
- 第5月第10天 node.js的request模块
1.node.js的request模块 http://www.cnblogs.com/meteoric_cry/archive/2012/08/18/2645530.html
随机推荐
- hdu_1018_Big Number_201308191556
Big NumberTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total S ...
- BZOJ——T 1801: [Ahoi2009]chess 中国象棋
http://www.lydsy.com/JudgeOnline/problem.php?id=1801 Time Limit: 10 Sec Memory Limit: 64 MBSubmit: ...
- P2330 [SCOI2005] 繁忙的都市 洛谷
https://www.luogu.org/problem/show?pid=2330#sub 题目描述 城市C是一个非常繁忙的大都市,城市中的道路十分的拥挤,于是市长决定对其中的道路进行改造.城市C ...
- Myeclipse10完美破解过程
Myeclipse10完美破解过程 1.假设还没有破解文件的话,能够先到这里去下载破解件 http://download.csdn.net/download/wangcunhuazi/7874155 ...
- Spring为了简化java开发採用的四种策略
以下是<Spring in action>中的总结性语言,记录下来,作为研究源码的主要线索. 1.採用轻量级的pojo.最小侵入式编程. 2.依赖注入(DI)和面向接口编程实现松耦合. 3 ...
- Instagram的Material Design概念设计文章分享
近期開始研究最新的Android 5 Material Design,一加氢OS公布后,非常快就有一大批支持Android5原生风格的手机出来了,你的App还是UI帮设计的吗?该考虑升级到 Mater ...
- Codeforces--617B--Chocolate(规律)
Chocolate Time Limit: 1000MS Memory Limit: 262144KB 64bit IO Format: %I64d & %I64u Submit ...
- leetcode数学相关
目录 166分数到小数 169/229求众数 238除自身以外数组的乘积 69Sqrt(x) 求平方根 231Power of Two 166分数到小数 给定两个整数,分别表示分数的分子 numera ...
- Webpack 2.0 的文档
Webpack 2.0 的文档 https://webpack.js.org/get-started/
- md5的用处
MD5保存摘要及指纹信息 md5的用处: 1.保存用户密码2.校验数据的完整性