Post提交数据的4种方式学习

今天在使用Postman测试API的时候,学习到了POST方式提交数据的4种方式。

form-data

默认的提交数据方式,常见如网页上提交的form表单。在Postman中可以添加多个key,后台接受到的是一字符串,形如:key1=val1&key2=val2。注意,key对应的可以是一个文件。在Express中,需要使用connect-multiparty来解析:

var multipart = require('connect-multiparty');
var multipartMiddleware = multipart();
app.use(multipartMiddleware);
//router中
router.post('/', function(req,res, next) {
    console.log(JSON.stringify(req.body));
    //
});

x-www-form-urlencoded

和form-data类似,但是不能传文件。Express模板中默认添加了处理该类数据的提交:

var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({ extended: false }));

raw

可以提交任何数据。在Postman中的文本框中,可以输入任意格式的字符串,对于App使用的API通常选择application/json。在Express中也是使用body-parser来解析:

app.use(bodyParser.json());

binary

只用于传输文件。

参考连接

Postman-Request-body

Comments