美文网首页
node 不支持get请求参数嵌套的解析?

node 不支持get请求参数嵌套的解析?

作者: monvhh | 来源:发表于2018-05-02 18:30 被阅读0次

    前端请求参数如下:

    {
        token: 'test111',
        routes: [{
            departCityCode: 'BJS',
            departDate: 1530316800000,
            arriveCityCode: 'SHA'
        }]
    }
    

    前端通过ajax,get
    后端拿到的请求参数原始字符串
    token=test111&routes%5BdepartCityCode%5D=BJS&routes%5BdepartDate%5D=1530316800000&routes%5BarriveCityCode%5D=SHA

    后端拿请求参数,不支持基本都会解析成这样:

    {
        token: 'test111',
        'routes[0][arriveCityCode]': 'SHA',
        'routes[0][departCityCode]': 'BJS',
        'routes[0][departDate]': '1530316800000'
    }
    

    1。koa2

    request.query 不支持,见官方文档


    koa2.png

    2。query-string

    不支持,见官方文档


    query-string.png

    3。node

    const querystring = require('querystring');
    官方文档没有说明是否支持,测试下来是不支持。

    4。express

    支持!!


    express.png

    我用的KOA,So,我只能自己写一个了……
    不明白KOA为何不支持,而query-string提到的 ‘it's not spec'd ’,到底是不满足什么规范?

    5。qs

    支持,见官方文档
    https://www.npmjs.com/package/qs

    抄的别人的架构,没事用啥query-string。qs使用更广泛!

    相关文章

      网友评论

          本文标题:node 不支持get请求参数嵌套的解析?

          本文链接:https://www.haomeiwen.com/subject/lbgcrftx.html