zoukankan      html  css  js  c++  java
  • Node基础:url查询参数解析之querystring

    模块概述

    在nodejs中,提供了querystring这个模块,用来做url查询参数的解析,使用非常简单。

    模块总共有四个方法,绝大部分时,我们只会用到 .parse().stringify()两个方法。剩余的方法,感兴趣的同学可自行查看文档。

    • .parse():对url查询参数(字符串)进行解析,生成易于分析的json格式。
    • .stringif():跟.parse()相反,用于拼接查询查询。
    querystring.parse(str[, sep[, eq[, options]]])
    querystring.stringify(obj[, sep[, eq[, options]]])
    

    查询参数解析:querystring.parse()

    参数:querystring.parse(str[, sep[, eq[, options]]])

    第四个参数几乎不会用到,直接不讨论. 第二个, 第三个其实也很少用到,但某些时候还是可以用一下。直接看例子

    var querystring = require('querystring');
    var str = 'nick=casper&age=24';
    var obj = querystring.parse(str);
    console.log(JSON.stringify(obj, null, 4));
    

    输出如下

    {
        "nick": "casper",
        "age": "24"
    }
    

    再来看下sepeq有什么作用。相当于可以替换&=为自定义字符,对于下面的场景来说还是挺省事的。

    var str1 = 'nick=casper&age=24&extra=name-chyingp|country-cn';
    var obj1 = querystring.parse(str1);
    var obj2 = querystring.parse(obj1.extra, '|', '-');
    console.log(JSON.stringify(obj2, null, 4));
    

    输出如下

    {
        "name": "chyingp",
        "country": "cn"
    }
    

    查询参数拼接:querystring.stringify()

    querystring.stringify(obj[, sep[, eq[, options]]])

    没什么好说的,相当于parse的逆向操作。直接看代码

    var querystring = require('querystring');
    
    var obj1 = {
        "nick": "casper",
        "age": "24"
    };
    var str1 = querystring.stringify(obj1);
    console.log(str1);
    
    var obj2 = {
        "name": "chyingp",
        "country": "cn"
    };
    var str2 = querystring.stringify(obj2, '|', '-');
    console.log(str2);
    

    输出如下

    nick=casper&age=24
    name-chyingp|country-cn
    

    相关链接

    官方文档:https://nodejs.org/api/querystring.html

  • 相关阅读:
    ceph之image(转)
    CEPH集群RBD快照创建、恢复、删除、克隆(转)
    java操作ceph之rbd基本操作
    Kubernetes (1.6) 中的存储类及其动态供给
    Linux 网络编程详解九
    Linux 网络编程详解八
    Linux 网络编程详解七(并发僵尸进程处理)
    Linux 网络编程详解六(多进程服务器僵尸进程解决方案)
    Linux 网络编程详解五(TCP/IP协议粘包解决方案二)
    C语言 memset函数盲点
  • 原文地址:https://www.cnblogs.com/chyingp/p/6037406.html
Copyright © 2011-2022 走看看