我正在尝试在native native中获取经过身份验证的用户登录的注册详细信息。 但它不起作用。我是新来的反应原生,所以任何人都可以说我做错了什么。
Index.js
onPressLogin()
{
this.setState({
isLoading: true,
error: '',
});
dismissKeyboard();
fetch('http://10.0.2.2/movies/signup.php' ,{
method: 'GET',
headers: {
'Accept' : 'application/json' ,
'Content-Type': 'application/json'
},
body : JSON.stringify({
contact : this.state.contact,
password: this.state.password
})
}).then((response) =>
{
return response.json();
}).then((response) => {
if(response.json){
const routeStack = this.props.navigator.getCurrentRoutes();
this.props.navigator.jumpTo(routeStack[3]);
AsyncStorage.multiSet([
[ 'contact' , response.contact],
]);
} else {
alert("Invalid login");
}
});
}
我使用PHP作为后端。
Signup.php
<?php
include 'db.php';
$check_json = file_get_contents('php://input');
echo $obj1=json_decode($check_json);
$contact=$obj1 ->{"contact"};
$pass=$obj1 ->{"password"};
$prep = $mysqli->prepare("select contact,password from signup where
contact=? and password=?");
$prep->bind_param("ss",$contact,$pass);
$prep->execute();
echo $result1=$prep->get_result();
$count= $result1->num_rows();
if($count>0){
echo '1';
}
else{
echo'0';
}
?>
答案 0 :(得分:0)
json中你的数据http://10.0.2.2/movies/signup.php..Encode上没有json数据。你也可以尝试使用axios来获取json数据。如果你使用的是本地服务器,那么请显示json编码输出。