【问题标题】:Javascript Fetch - Custom header is causing error: net::ERR_HTTP2_PROTOCOL_ERRORJavascript Fetch - 自定义标头导致错误:net::ERR_HTTP2_PROTOCOL_ERROR
【发布时间】:2022-05-04 23:32:49
【问题描述】:

早安,

我需要从我的网站访问支付网关的 API。它是用 React 和 Next JS 构建的。

在使用 fetch 方法时,我收到一个错误:net::ERR_HTTP2_PROTOCOL_ERROR。控制台中显示第二个错误:Uncaught (in promise) TypeError: Failed to fetch

当我设置自定义标题时,我已将其缩小为问题。我需要设置这些以通过 API 进行身份验证。

我对此知之甚少,但我认为浏览器甚至没有发出预检请求。

目前有两个标题。一个简单的“Content-Type”和一个非简单的自定义“merchant-id”标头。如果我删除自定义标头,则获取执行良好,并且我从 API 获得服务器响应。添加自定义标头时请求失败。

const request = new Request(
    `https://api.payfast.co.za/ping?testing=true`,
    {
      method: "GET", 
      headers: {
        "Content-Type": "text/plain",
        // "merchant-id": "xxxx",
      },
    }
  );

fetch(request).then((res) => res.json()).then((data) => console.log(data));

关于我应该从哪里开始寻找的任何建议?

我已经在 HTTP 客户端中对此进行了测试,如果我添加自定义标头,它可以正常工作。

谢谢, 科里

【问题讨论】:

    标签: javascript header fetch http2


    【解决方案1】:

    您好,尝试在您的服务器上增加更改配置哦 HTTP -> 我在我的网络服务器“payara”中更改了“HTTP/2 Max Header List Size”参数:管理面板 -> 配置 -> 服务器配置 - >Network Config -> Network Listeners -> http-listener-1 :8080 -> HTTP tab -> HTTP/2 Max Header List Size to 49152

    【讨论】:

      猜你喜欢
      • 2022-01-13
      • 2015-06-18
      • 1970-01-01
      • 2020-03-25
      • 2018-02-21
      • 1970-01-01
      • 2020-07-02
      • 1970-01-01
      • 2017-11-06
      相关资源
      最近更新 更多