如何使用节点的其余客户端上传文件
我在节点上有一个REST客户端,我试图将一个file upload到另一个RESTnetworking服务器,它提供了parsing我的PDF和提取一些数据的能力。 基本上这是一项服务。 我使用的npm包是: https : //www.npmjs.com/package/node-rest-client 。 如果还有其他rest客户,我也可以使用这些客户。 我需要使用的其余API如下所述:
POST / ; Uploads a new PDF document via a form <br> POST /file ; Uploads a new PDF document via bytestream
问题是如何上传文件。 另外,我想看看如何在另一端存储文件。
您可以使用npm模块请求上传文件。 这是一个工作的例子
var request = require('request'); var fs = require('fs'); request({ method: 'PUT', preambleCRLF: true, postambleCRLF: true, uri: 'http://yourdomain/file', multipart: [ { 'content-type': 'application/pdf' body: fs.createReadStream('image.png') } ] }, function (error, response, body) { if (error) { return console.error('upload failed:', error); } console.log('Upload successful! Server responded with:', body); });
为了在服务器端接收节点,你可以使用像busboy这样的模块。 这里是一个演示
var busboy = require('connect-busboy'); app.use(busboy()); app.use(function(req, res) { if (req.busboy) { req.busboy.on('file', function(fieldname, file, filename, encoding, mimetype) { // move your file etc }); req.pipe(req.busboy); } });
你可以使用请求 。
有一个例子
fs.createReadStream('file.pdf').pipe(request.post('http://example.com/file'))
- for循环在node.js中每次都返回相同的值
- TypeError:当构造Javascript w / new时,Object不是Object。<anonymous>的函数
- 将EventEmitter移到debugging器中的侦听器
- 通过node.js v5.10.1获取“inheritance”错误
- Nodejs,expressjs – 如何提供延迟响应
- 如何将一个Mongoose对象与一个JSON对象进行比较?
- MERN React / Redux / MongoDB实体authentication的同构样板
- (…)。然后在节点(expressJS)中不是函数
- Socket.io从Express控制器发出