繁体   English   中英

在Node.js中(请求)如何在mutliPart HTTP请求中发送文件

[英]In Nodejs (request) how to send file in a mutliPart http request

如何使用Node.js通过请求使用MultiPart发送文件?

这与对Curl的以下命令相同:

curl -X POST -F "photos[]=@img.jpg;type=image/jpg" https://example.com

它创建的Http请求:

{
  "json": null,
  "files": {
    "photos[]": "data:image/jpg;base64,[Binary]
},
  "form": {},
  "headers": {
    "Accept": "*/*",
    "Content-Type": "multipart/form-data; boundary=----------------------------0195fbe0d4ab",
    "Connection": "close",
    "Host": "httpbin.org",
    "Content-Length": "42311",
    "User-Agent": "curl/7.24.0 (x86_64-apple-darwin12.0) libcurl/7.24.0 OpenSSL/0.9.8x zlib/1.2.5"
  },
  "origin": "23.125.128.191",
  "data": "",
  "url": "http://httpbin.org/post",
  "args": {}
}

通过简单搜索“ nodejs多部分表单数据”可以发现: github.com/felixge/node-form-data 它甚至可以与request模块一起使用:

var FormData = require('form-data');
var request = require('request');

var form = new FormData();

form.append('photos[]', request('img.jpg'));

form.submit('https://example.com/', function(err, res) {
    res.resume(); // for node-0.10.x
});

记住:Node.js已经拥有大量的OS模块,只需搜索即可!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM