如何在req.body中找到内容的类型?

时间:2017-08-22 07:54:08

标签: javascript node.js npm httpresponse

根据https://developer.mozilla.org/en-US/docs/Web/API/Request/Request,身体的类型可以是以下任何一种类型:

  1. ArrayBuffer

  2. 斑点

  3. FORMDATA

  4. JSON

  5. 文本

  6. 接收方是否有办法知道它是什么类型的?我问的原因是因为我从第三方获得了一条POST消息,其中req.body是空的。

    // my code
    console.info("Headers: ", req.headers); // shows headers
    console.log("Data: ", req.body); // shows nothing
    

    然而,在进一步检查之后,似乎我需要按如下方式处理数据(因为它使用了ReadableStream):

       // code from a 3rd party library
       req.on('data', function (chunk) {
           data += chunk;
       });
    
       req.on('end', function () {
           var messageData = JSON.parse(data);
           console.log("Data: ", messageData); //shows data
        }
    

1 个答案:

答案 0 :(得分:0)

可以自己做,但大多数人使用expressBody Parser库来避免加载样板代码来解析它们。