fetch() 在 react-native (iOS) 上执行 GET 而不是 POST

fetch() doing GET instead of POST on react-native (iOS)

我的组件中有以下代码:

fetch('https://domain.com/api', {
  method: 'POST',
  headers: {'Accept': 'application/json', 'Content-Type': 'application/json'},
  body: JSON.stringify({
    key: 'value'
  })
}).
  then((response) => {
    console.log('Done', response);
  });

并且每次请求都是 GET(检查服务器日志)。我认为这与 CORS(但显然 react-native 中没有这样的东西)和 ATS(但默认情况下已关闭,加上我的域是 HTTPS)有关。我已经从浏览器和 curl 尝试过,它运行良好,因此服务器配置没有先验问题。知道这里发生了什么吗?

我使用的是最新的 react-native 版本。

进一步挖掘后,肯定是API + fetch的问题。我在 URL 末尾少了一个斜杠,API 发出了 301,fetch 没有正确处理。所以我不知道获取函数(和底层机制)是否有什么需要修复的,但这解决了我的问题:)

当 POST 被重定向(在我的例子中是从 http 到 https)时,它被转换为 GET。 (不知道为什么...)