当前位置:网站首页>nodeJs--querystring模块
nodeJs--querystring模块
2022-07-31 09:58:00 【H5_ljy】
文章目录
一、querystring模块的作用
对http请求所带的数据进行解析,可以把querystring参数解析为一个对象
二、querystring模块的方法
1.querystring.parse(str,separator,eq,options)
parse这个方法是将一个字符串反序列化为一个对象。
参数:
str指需要反序列化的字符串;
separator(可省)指用于分割str这个字符串的字符或字符串,默认值为"&“;
eq(可省)指用于划分键和值的字符或字符串,默认值为”=";
options(可省)该参数是一个对象,里面可设置maxKeys和decodeURIComponent这两个属性:
- maxKeys:传入一个number类型,指定解析键值对的最大值,默认值为1000,如果设置为0时,则取消解析的数量限制;
- decodeURIComponent:传入一个function,用于对含有%的字符串进行解码,默认值为querystring.unescape。在官方API的
var querystring=require('querystring')
var url=require('url')
var urlobj=url.parse("http://www.baidu.com/home/index.html?count=20&user=karen#top")
var query=querystring.parse(urlobj.query)
console.log(query)
这个方法相当于url模块的第二个参数设置为true,然后取query属性值
2.querystring.stringify(obj,separator,eq,options)
stringify这个方法是将一个对象序列化成一个字符串,与querystring.parse相对。
参数:
obj指需要序列化的对象
separator(可省)用于连接键值对的字符或字符串,默认值为"&“;
eq(可省)用于连接键和值的字符或字符串,默认值为”=";
options(可省)传入一个对象,该对象可设: encodeURIComponent这个属性:值的类型为function,可以将一个不安全的url字符串转换成百分比的形式,默认值为querystring.esca
var querystring=require('querystring')
var obj={
count:20,
user:"karen"
}
var query=querystring.stringify(obj,"*","%")
console.log(query)
3 querystring.escape(str)
escape可使传入的字符串进行编码
var querystring=require('querystring')
var query=querystring.escape("user=杰克")
console.log(query)
4 querystring.unescape(str)
unescape方法可将含有%的字符串进行解码
var querystring=require('querystring')
var query=querystring.unescape("user%3D%E6%9D%B0%E5%85%8B")
console.log(query)
边栏推荐
- loadrunner脚本--添加检查点
- Web系统常见安全漏洞介绍及解决方案-XSS攻击
- 出色的移动端用户验证
- 湖仓一体电商项目(二):项目使用技术及版本和基础环境准备
- Business-(Course-Chapter-Subsection) + Course Publishing Some Business Ideas
- 自定义v-drag指令(横向拖拽滚动)
- Flink1.15源码阅读——PER_JOB vs APPLICATION执行流程
- NowCoderTOP28-34 binary tree - continuous update ing
- Kotlin入门介绍篇
- Gradle series - Groovy overview, basic use (based on Groovy document 4.0.4) day2-1
猜你喜欢
来n遍剑指--09. 用两个栈实现队列
NowCoderTOP28-34 binary tree - continuous update ing
(C language) program environment and preprocessing
数据中台建设(六):数据体系建设
零代码工具推荐 八爪鱼采集器
Open Kylin openKylin automation developer platform officially released
ReentrantLock
第五章
Redis Sentinel原理
Flink1.15 source code reading - PER_JOB vs APPLICATION execution process
随机推荐
Open Kylin openKylin automation developer platform officially released
cocoaPods管理之后工程结构变化
Source code analysis of GZIPInputStream class
第五章
qt在不同的线程中传递自定义结构体参数
零代码工具推荐 八爪鱼采集器
作为面试官,关于线程池的问题我一般这样套路...
loadrunner-controller-view script与load generator
来n遍剑指--07. 重建二叉树
Qt compile error: C2228: '.key' must have class/struct/union on the left
Module eight
Mybaits 常用问题详解
js右侧圆点单页滚动介绍页面
Day113.尚医通:用户认证、阿里云OSS、就诊人管理
GCD简单了解
乐观锁和悲观锁
我们能做出来数据库吗?
梅科尔工作室--鸿蒙十四天开发培训笔记(八)
【节选】吴恩达给出的AI职业生涯规划
如何在 TiDB Cloud 上使用 Databricks 进行数据分析 | TiDB Cloud 使用指南