我在使用 FETCH 时遇到问题。
我正在尝试在 react-native 中使用 FETCH 发出 POST 请求。
fetch("http://www.example.co.uk/login", {
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body: JSON.stringify({
username: 'test',
password: 'test123',
})
})
.then((response) => response.json())
.then((responseData) => {
console.log(
"POST Response",
"Response Body -> " + JSON.stringify(responseData)
)
})
.done();
}
当我使用 Charles 检查这个调用时,它被记录为一个 GET 请求,并且应该在正文中的用户名和密码不存在。
任何人都可以帮助解决这个问题吗?
原文由 samb90 发布,翻译遵循 CC BY-SA 4.0 许可协议
当 POST 请求发送到 HTTPS(而不是 HTTP)服务器时,我遇到了这个问题。由于某种原因,它会在某处被转换为 GET 请求。
事实证明,我做错了什么是将请求发送到
http://myserver.com:80
而不是https://myserver.com:443
。一旦我将它切换到正确的前缀和端口,请求就会正确地作为 POST 发送。