使用多部分 FormData 获取时 415 POST
415 on fetch POST with multipart FormData
我看了无数的帖子,我只是被这个应该如此简单的问题难住了。
let formData = new FormData();
formData.append('message', payload.message);
formData.append('attachment', this.state.attachment);
let options = {
method: 'post',
body: formData
}
fetch('api/contact', options);
然后我得到了非常熟悉的 415 错误:
Request URL: https://localhost:44348/api/contact
Request Method: POST
Status Code: 415
Remote Address: [::1]:44348
Referrer Policy: no-referrer-when-downgrade
我知道不要设置我的 Content-Type 甚至 headers,一切看起来都很好,包括边界:
请求Headers
:authority: localhost:44348
:method: POST
:path: /api/contact
:scheme: https
accept: */*
accept-encoding: gzip, deflate, br
accept-language: en-US,en;q=0.9
cache-control: no-cache
content-length: 10269
content-type: multipart/form-data; boundary=----WebKitFormBoundary5iTqTV6AaKla3BMA
origin: https://localhost:44348
pragma: no-cache
referer: https://localhost:44348/contact
sec-fetch-dest: empty
sec-fetch-mode: cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36
表单数据
message: asdasd
attachment: (binary)
这与我以前在旧 jQuery 网站上使用的 API 相同,并且运行良好。有什么想法吗?
let options = {
method: 'post',
body: formData
}
JSON 声明中 body
之后的分号 ;
可能会导致 运行 上的错误。这可能是一个问题,请检查一下。在附加附件时,请检查它是否已正确转换为二进制格式。希望能帮助到你!!编码愉快!!
旧版本的 Core 在解析传入模型时不区分大小写,新版本是。
我看了无数的帖子,我只是被这个应该如此简单的问题难住了。
let formData = new FormData();
formData.append('message', payload.message);
formData.append('attachment', this.state.attachment);
let options = {
method: 'post',
body: formData
}
fetch('api/contact', options);
然后我得到了非常熟悉的 415 错误:
Request URL: https://localhost:44348/api/contact
Request Method: POST
Status Code: 415
Remote Address: [::1]:44348
Referrer Policy: no-referrer-when-downgrade
我知道不要设置我的 Content-Type 甚至 headers,一切看起来都很好,包括边界:
请求Headers
:authority: localhost:44348
:method: POST
:path: /api/contact
:scheme: https
accept: */*
accept-encoding: gzip, deflate, br
accept-language: en-US,en;q=0.9
cache-control: no-cache
content-length: 10269
content-type: multipart/form-data; boundary=----WebKitFormBoundary5iTqTV6AaKla3BMA
origin: https://localhost:44348
pragma: no-cache
referer: https://localhost:44348/contact
sec-fetch-dest: empty
sec-fetch-mode: cors
sec-fetch-site: same-origin
user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36
表单数据
message: asdasd
attachment: (binary)
这与我以前在旧 jQuery 网站上使用的 API 相同,并且运行良好。有什么想法吗?
let options = {
method: 'post',
body: formData
}
JSON 声明中 body
之后的分号 ;
可能会导致 运行 上的错误。这可能是一个问题,请检查一下。在附加附件时,请检查它是否已正确转换为二进制格式。希望能帮助到你!!编码愉快!!
旧版本的 Core 在解析传入模型时不区分大小写,新版本是。