【问题标题】:parse form data in nodejs service在 nodejs 服务中解析表单数据
【发布时间】:2017-04-20 17:25:20
【问题描述】:
var express = require('express');
var bodyParser = require('body-parser');
var app = express();

app.use(bodyParser.json());
//app.use(express.urlencoded());
app.use(bodyParser.urlencoded({// to support URL-encoded bodies
    extended: true`enter code here`
}));

app.post('/register', function (req, res) {
    console.log("inside log");
    console.log(req.body);
    var username = req.body.username;
    console.log(username);
});

由于我在表单数据中发布数据时使用了 urlencoded(),因此我没有在 req.body 中获取数据。我附上了邮递员的图片

如果我在 x-www-urlencoded 中发送数据,那么我会得到数据

请给我一个解析数据的解决方案。我想在表单数据中传递它,因为我也会上传一张图片。所以对于图片形式的数据是必须的

【问题讨论】:

    标签: node.js web-services post


    【解决方案1】:

    你需要使用 connect-multiparty npm 模块。

      global.app = module.exports = express();
    
    var multipart = require('connect-multiparty');
    
    app.use(multipart());
    

    你没有在 postman 中设置 content-type,因为节点服务器会根据 form-data 文件自动在 header 中设置他的 content-type。

    【讨论】:

    • 是的。这很好用。但是图像没有上传。我正在使用 blueimp-file-upload-expressjs 上传图像。但它给出了错误_http_outgoing.js:335 throw new Error('Can\'t set headers after they are sent.');
    • 这是回调错误。只需检查你没有在代码中完成两次回调。
    猜你喜欢
    • 1970-01-01
    • 2014-06-29
    • 2017-09-28
    • 1970-01-01
    • 1970-01-01
    • 2019-10-02
    • 2020-07-25
    • 1970-01-01
    • 2018-09-07
    相关资源
    最近更新 更多