javascript - FormData append 是追加文件后的空对象
问题描述
这是我尝试附加并发送到服务器的文件(console.log):
...
console.log(myFile); // brings this:
File(1921512) {name: "2018-10-07_23-53-14.png", lastModified: 1538945346813, lastModifiedDate: Sun Oct 07 2018 23:54:06 GMT+0300 (Israel Daylight Time), webkitRelativePath: "", size: 1921512, …}
lastModified: 1538945346813
lastModifiedDate: Sun Oct 07 2018 23:54:06 GMT+0300 (Israel Daylight Time) {}
name: "2018-10-07_23-53-14.png"
size: 1921512
type: "image/png"
webkitRelativePath: ""
__proto__: File
我像这样附加这个文件:
let formData = new FormData();
formData.append(0, myFile);
然后我这样做:
console.log(formData); // FormData {}__proto__: FormData
那里没有附加文件。
当我尝试将此发送到服务器时,Http 请求标头的内容类型不包含任何内容类型:
请求标头:
Accept: */*
Accept-Encoding: gzip, deflate, br
Accept-Language: he-IL,he;q=0.9,en-US;q=0.8,en;q=0.7,pt;q=0.6,la;q=0.5
Access-Control-Request-Headers: authorization
Access-Control-Request-Method: POST
Cache-Control: no-cache
Connection: keep-alive
Host: localhost:3000
Origin: http://localhost:8080
Pragma: no-cache
Referer: http://localhost:8080/
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36
我试图用实体记录这个,但这仍然不起作用 - 无论如何服务器没有得到任何文件。
解决方案
我添加了:transformRequest: angular.identity
在请求参数中。
推荐阅读
- git - 如何使用 `git stash --patch` 和 `git stash save`
- loops - 从具有动态值的工作表中更新动态电子表格“数据库”
- python - 我在 Pycharm 中使用 PySide2 来构建我的 GUI 程序,但是在哪里可以找到参考文档?
- objective-c - IOS。NSObject malloc 内存的实例为 16 字节?依据是什么?
- javascript - 如何在反应中使用 react-hook-form 将表单数据发送到状态?
- sql - 带有 sysdate 的 oracle 顶点时间戳间隔
- javascript - 表格分页上一个和下一个按钮错误
- c# - 尝试嵌套 foreach 循环中的 catch 块不返回正确的输出,c#
- sql-server - 计算运行总余额
- apache-kafka - Kafka - 消费者视角 - “承诺”消息解释