我想使用fetch API,将一个new FormData()
作为POST
请求的body
发送。
操作大致如下:
var formData = new FormData()
formData.append('myfile', file, 'someFileName.csv')
fetch('https://api.myapp.com',
{
method: 'POST',
headers: {
"Content-Type": "multipart/form-data"
},
body: formData
}
)
问题在于边界,就像某件事情
boundary=----WebKitFormBoundaryyEmKNDsBKjB7QEqu
从来没有进入Content-Type:
头部
应该看起来像这样:
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryyEmKNDsBKjB7QEqu
当您尝试使用new XMLHttpRequest()
进行“相同”操作时,如下所示:
var request = new XMLHttpRequest()
request.open("POST", "https://api.mything.com")
request.withCredentials = true
request.send(formData)
标题已经正确设置。
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryyEmKNDsBKjB7QEqu
那么我的问题是:
- 在这种情况下,我如何使
fetch
的行为与XMLHttpRequest
完全相同? - 如果不可能,请问为什么?
谢谢大家!这个社区或多或少是我取得职业成功的原因。
delete result.headers['Content-Type'];
对我有用,谢谢! - Crysfel