我正在编写一个Visual Studio扩展,并尝试使用multipart / form-data通过http请求发送图像。
const fs = require('fs');
const form = new FormData();
const f = fs.readFileSync('/IMG.jpg');
const XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
let request = new XMLHttpRequest();
request.onreadystatechange = function() {
console.log(`${request.readyState}`);
if (request.readyState === 4) {
console.log(`Successfully uploaded at: ${request.response.date}`);
}
};
request.open('POST', `https://api.trello.com/1/card/${idCard}/attachments`);
form.append("key", this.getKey());
form.append("token", this.getToken());
form.append("file", f);
form.append("mimeType", "image/jpg");
form.append("name", "My Awesome File");
//request.setRequestHeader('Content-Type','multipart/form-data');
request.send(form);
在request.send(form)
行,我有例外情况
TypeError [ERR_INVALID_ARG_TYPE] [ERR_INVALID_ARG_TYPE]: The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type object
所有使用XmlHttpRequest的示例都表明FormData可以在此方法中使用。我从npm为Node.js安装了XmlHttpRequest和FormData。
如何发送此FormData?