我的REST API应该将文件发送到另一个API,我不知道如何解决它。我从Endpoint API获得的唯一内容就是这个curl命令:
curl -i -X POST --data-binary @localimg.jpg --header
"X-API-PersonalKey: XXXX-XXXX-XXXX-XXXX" --header "ContentType:application/octet-stream"
http://XXX.XX/..../upload
(顺便说一下,我没有卷曲或此功能的exp,所以我必须动态学习。)
我搜索并找到了一个带有文件系统Readstream和请求POST的教程。
我的解决方案就是这个(并且它已经工作了)
var fs = require('fs');
var url = "http://XXX.XX/..../upload";
console.log(url);
var fdata = fs.createReadStream("c:/xxx/xxx/localimage.jpg");
console.log(fdata);
var options = {
url: url,
headers: {
'X-API-PersonalKey': authToken,
"Content-Type": "application/octet-stream"
},
data: fdata,
body: fdata
};
request.post(options, function optionalCallback(err, httpResponse, body) {
if (err) {
return console.error('upload failed:', err);
}
console.log("httpRes =" + httpResponse);
console.log('Upload successful! Server responded with:', body);
});
答案 0 :(得分:0)
您需要发布multipart / form-data才能使用其表单功能。