我的组件中有以下代码:
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
版本。
答案 0 :(得分:4)
进一步挖掘后,这绝对是API + fetch
的问题。我在URL的末尾错过了一个斜杠,并且API发出了301,fetch
无法正确处理。所以我不知道在fetch函数(和底层机制)中是否有某些东西要修复,但这解决了我的问题:)
答案 1 :(得分:0)
当重定向POST时(在我的情况下从http到https),它会转换为GET。 (不知道为什么......)