Javascript 如何在获取请求中传递 POST 参数?- 反应本机
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/42011100/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-23 00:49:34 来源:igfitidea点击:
How can I pass POST parameters in fetch request? - React Native
提问by Isaac Gomes
This is my code:
这是我的代码:
componentWillMount() {
fetch("http://10.4.5.114/localservice/webservice/rest/server.php", {
method: 'POST',
body: JSON.stringify({
wstoken: 'any_token',
wsfunction: 'any_function',
moodlewsrestformat: 'json',
username: 'user',
password: 'pass',
})
})
.then((response) => response.text())
.then((responseText) => {
alert(responseText);
})
.catch((error) => {
console.error(error);
});
}
In the browser, this request returns a token, but in my react-native android App returns a xml error.
在浏览器中,此请求返回一个令牌,但在我的 react-native android 应用程序中返回一个 xml 错误。
回答by Jeferson Macedo
This what worked for me
这对我有用
fetch("http://10.4.5.114/localservice/webservice/rest/server.php", {
method: 'POST',
headers: new Headers({
'Content-Type': 'application/x-www-form-urlencoded', // <-- Specifying the Content-Type
}),
body: "param1=value1¶m2=value2" // <-- Post parameters
})
.then((response) => response.text())
.then((responseText) => {
alert(responseText);
})
.catch((error) => {
console.error(error);
});
回答by Santosh Sharma
Try to add header in post request.
尝试在发布请求中添加标头。
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
wstoken: 'any_token',
wsfunction: 'any_function',
moodlewsrestformat: 'json',
username: 'user',
password: 'pass',
})

