【发布时间】:2022-09-24 03:41:47
【问题描述】:
所以我有一个包含图像的 URL,我想将该图像作为多部分表单数据的一部分传递给 API(具体来说,如果重要的话,就是 ClickUp API)。我在一个浏览器环境的 Figma 插件中完成所有这些工作。
该网址看起来像 https://s3-alpha-sig.figma.com....
该请求非常适用于我手动添加的本地图像,例如在 Postman 中。以下是成功向此端点发出 Postman 请求的代码:
var axios = require(\'axios\');
var FormData = require(\'form-data\');
var fs = require(\'fs\');
var data = new FormData();
data.append(\'attachment\', fs.createReadStream(\'7UI7S5-pw/fdb54856-9c05-479f-b726-016ef252d9f5.png\'));
data.append(\'filename\', \'example.png\');
var config = {
method: \'post\',
url: \'https://api.clickup.com/api/v2/task/2phh5bf/attachment\',
headers: {
\'Authorization\': \'(my auth token)\',
...data.getHeaders()
},
data : data
};
axios(config)
.then(function (response) {
console.log(JSON.stringify(response.data));
})
但是,我无权访问本地文件,需要从 URL 上传,所以这是我到目前为止所做的:
var data = new FormData();
data.append(\'attachment\', open(imgURL));
data.append(\'filename\', \'screenshot.png\');
fetch(`(the URL)`, {
\"method\": \"POST\",
\"muteHttpExceptions\": true,
\"headers\": {
\'Authorization\': \'(my auth token)\',
...data.headers
},
data: data
}).then(response => {
console.log(response)
})
我应该如何将 URL 转换为可以作为表单数据输入的内容?提前非常感谢!
标签: node.js image api url multipartform-data