javascript - 在Angular 8中使用files.upload将文件上传到slack api时获得'invalid_form_data'响应
问题描述
我正在使用表单来收集包括文件在内的信息,并且我正在尝试在提交时将该文件上传到松弛通道。我已尝试使用此答案中的建议:https ://stackoverflow.com/a/47597472/8429996 ,但仍然得到相同的错误响应“invalid_form_data”。我使用 postMessage 方法成功发送了一条消息,但我想从用户系统附加一个文件并使用 files.upload 直接上传到 slack。这可能吗?
这是代码:
upload(e) {
this.file = e.target.files[0];
const httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'multipart/form-data'
})
};
var formData = new FormData();
formData.append('token', SLACK_TOKEN);
formData.append('channels', SLACK_CHANNELS);
formData.append('file', this.file);
this.http.post<any>('https://slack.com/api/files.upload', formData, httpOptions).subscribe(
resp => { console.log(resp) },
error => { console.log(error) }
);
}
测试文件对象如下所示:
File: {
lastModified: 1606970395000
lastModifiedDate: Wed Dec 02 2020 23:39:55 GMT-0500 (Eastern Standard Time) {}
name: "IMG_0320.HEIC"
size: 1206160
type: "image/heic"
webkitRelativePath: ""
}
解决方案
想通了...只是删除了标题并且它起作用了。
推荐阅读
- javascript - 无法使用带有 Node JS 的 Lambda 函数访问 JavaScript 对象数组中的特定属性
- ansible - 为什么我的 yaml 在 ansible playbook 中无效?
- angular - Angular / NGINX 上的 CORS 策略被阻止
- angularjs - 将模型值格式化为日期 angularjs
- mysql - 按出现次数最多的搜索查询排序
- google-sheets - 有没有办法在 Google 表格中按名称链接数据?
- c++ - 将 std::sort 与原始指针数组一起使用?
- python - 如何检索雅虎搜索结果?
- asp.net - 'label1' 未声明 | 它在包含文件中定义
- deployment - 为什么通过 redis-ha 在 k8s 上集群不起作用?