3种不同类型的post

Post with x-www-form-urlencoded

see post.html


in routes/users.js

router.post('/post', function(req, res) { 
// res.send('respond with a resource'); 
res.json(req.body);
});
3种不同类型的post_第1张图片
Paste_Image.png

Post with form-data

主要目的是为了上传

npm install --save multer

Usage

var express = require('express')
var multer = require('multer')
var app = express()
app.use(multer({ dest: './uploads/'}))

You can access the fields and files in the request object:

console.log(req.body)
console.log(req.files)

重要提示:
Multer will not process any form which is not multipart/form-data
see more

3种不同类型的post_第2张图片
Paste_Image.png

Post with raw

To get the raw body content of a request with Content-Type: "text/plain" into req.rawBody you can do:

https://gist.github.com/tj/3750227

req.rawBody已经被干掉了,现在只能用req.text

下面是tj给出的代码片段

var express = require('./')
var app = express();
app.use(function(req, res, next){
if (req.is('text/*')) { 
  req.text = ''; 
  req.setEncoding('utf8'); 
  req.on('data', function(chunk){ req.text += chunk }); 
  req.on('end', next);
 }else { 
  next(); 
  }
});
app.post('/', function(req, res){ 
res.send('got "' + req.text + '"');
});
app.listen(3000)
3种不同类型的post_第3张图片
Paste_Image.png

http://i5ting.github.io/node-http/#10801

你可能感兴趣的:(3种不同类型的post)