如何为 fetch API 调用设置大请求 Body
How to set large Request Body for fetch API call
我有一个 fetch
POST
正在发送一个大 JSON object:
const body = JSON.stringify(largeItem); // 80MB
const request = new Request(uri, {
mode: 'cors',
method: 'POST',
headers: new Headers({ 'Content-Type': 'application/json' }),
credentials: 'same-origin',
body
});
const response = await fetch(request);
这会导致错误:
source-file.ts:72 Uncaught (in promise) TypeError: Failed to fetch
当我在开发工具中查看此请求时,它看起来不完整 - 没有请求 body 并且大部分请求 headers 都丢失了。此外,它在没有状态代码的情况下出错,而是状态为:
(failed) net::ERR_CONNECTION_RESET
许多其他 GET
和 POST
对具有相同凭据的相同资源的请求工作正常。此代码适用于较小的 body
.
如何 POST
一个大(在本例中为 80MB)JSON body 的请求?
我认为您的问题与 http
或 web server
(或者我猜是浏览器)限制有关
请阅读此答案以了解我在说什么
。
我有一个 fetch
POST
正在发送一个大 JSON object:
const body = JSON.stringify(largeItem); // 80MB
const request = new Request(uri, {
mode: 'cors',
method: 'POST',
headers: new Headers({ 'Content-Type': 'application/json' }),
credentials: 'same-origin',
body
});
const response = await fetch(request);
这会导致错误:
source-file.ts:72 Uncaught (in promise) TypeError: Failed to fetch
当我在开发工具中查看此请求时,它看起来不完整 - 没有请求 body 并且大部分请求 headers 都丢失了。此外,它在没有状态代码的情况下出错,而是状态为:
(failed) net::ERR_CONNECTION_RESET
许多其他 GET
和 POST
对具有相同凭据的相同资源的请求工作正常。此代码适用于较小的 body
.
如何 POST
一个大(在本例中为 80MB)JSON body 的请求?
我认为您的问题与 http
或 web server
(或者我猜是浏览器)限制有关
请阅读此答案以了解我在说什么
。