express上传图片

express上传图片

var express = require('express')
var app = express()
var proxy = require('http-proxy-middleware')

var fs = require("fs");

var formidable = require('formidable');

app.all('*', function (req, res, next) {
  res.header('Access-Control-Allow-Origin', '*');
  //Access-Control-Allow-Headers ,可根据浏览器的F12查看,把对应的粘贴在这里就行
  // res.header('Access-Control-Allow-Headers', 'Content-Type');
  // res.header('Access-Control-Allow-Methods', '*');
  // res.header('Content-Type', 'application/json;charset=utf-8');
  next();
});



// 改为:
app.use(express.json());
app.use(express.urlencoded());


var options = {
  target: 'http://10.254.222.170',
  //target: 'http://10.214.69.242:8080', 
  changeOrigin: true,
  ws: true,
  pathRewrite: {
    '^/IDSJTVersion': '/IDSJTVersion'
  }
}

var options1 = {
  //target: 'http://10.254.201.218:8090', 
  target: 'http://10.254.222.170:8080',
  changeOrigin: true,
  ws: true,
  pathRewrite: {
    '^/AtmosphericWeb': '/AtmosphericWeb'
  }
}

//var exampleProxy = proxy(options)
//app.use('/api', exampleProxy)
app.get('/liuhao', function (req, res) {
  res.send('我是服务端来的数据')
})




app.post('/upload', function(req,res){
  var form = new formidable.IncomingForm();
  console.log('about to parse');
  form.parse(req, function(error, fields, files){
    console.log('parse done')
    console.log(files.upload.path);
    // 读取文件流并写入到public/test.png
    fs.writeFileSync('./test.png', fs.readFileSync(files.upload.path));
    //重定向到结果页
    res.send('我是服务端来的数据')
  })
});




      app.use(express.static('public'))
      app.listen(3000, () => console.log('Example app listening on port 3000!'))

  

<form target="frame" action="/upload" method="POST" enctype="multipart/form-data">
<input type="file" name="upload" id="upload" multiple="multiple" value="" />
<button type="submit">提交</button>
</form>
<iframe name="frame"></iframe>
<script>

</script>