通过上传和POST请求

时间:2017-02-04 15:19:35

标签: node.js post file-upload

请注意:我想用vanilla Node执行此操作。

我想上传一个带有input type="file" HTML标记的文件,并在同一个表单元素中点击提交按钮input type="submit",并在我提交POST请求时获取文件大小(以字节为单位)。

由于

1 个答案:

答案 0 :(得分:1)

以下内容应该有效:

var http = require('http');

var server = http.createServer(function(req, res) {
  switch (req.url) {
    case '/':
      display_form(req, res);
      break;
    case '/upload':
      show_bytes(req, res);
      break;
    default:
      res.writeHead(404, {'content-Type': 'text/plain'});
      res.write('not found');
      res.end();
      break;
  }
});
server.listen(3000);

function display_form(req, res) {
  res.writeHead(200, {'Content-Type': 'text/html'});
  res.write(
    '<form action="/upload" method="post" enctype="multipart/form-data">'+
    '<input type="file" name="upload">'+
    '<input type="submit" value="Submit">'+
    '</form>'
  );
  res.end();
}

function show_bytes(req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.write(req.headers['content-length'] +  ' bytes');
  res.end();
}