V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dixeran
V2EX  ›  Node.js

收到 POST 的 data, 用 querystring.parse() 的方法得不到对象,求助~

  •  
  •   dixeran · 2017-07-01 12:58:43 +08:00 · 2922 次点击
    这是一个创建于 2702 天前的主题,其中的信息可能已经有所发展或是发生改变。
    POST 的 data:{
    name:'123'
    }
    在服务器里写

    req.on('data', function (requestData) {
    reqRaw = requestData;
    reqData = querystring.parse(requestData);
    });

    得到的 reqRaw 确实是 ‘ name=123 ’ , 但是 JSON.stringify( reqData ) 得到的却是 {}

    初学 Node,不知道碰到了什么坑?
    2 条回复    2017-07-01 13:19:06 +08:00
    noe132
        1
    noe132  
       2017-07-01 13:06:08 +08:00
    req 的 data 事件是分块的。
    req 属于 Readable Stream
    data 事件用来收集分块的数据
    end 事件表示数据已经全部发送完毕
    https://nodejs.org/dist/latest-v8.x/docs/api/stream.html#stream_event_data
    数据最后处理放在 end 事件里
    dixeran
        2
    dixeran  
    OP
       2017-07-01 13:19:06 +08:00
    @noe132 确实是这样,谢谢!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2673 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 03:51 · PVG 11:51 · LAX 19:51 · JFK 22:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.