我是本机(对2星期大的婴儿)有反应的新手,而且我一直在尝试为该应用程序完成登录验证。我在Real Xiaomi Android设备上使用Expo Client连接到使用XAMPP在本地Windows计算机上运行的API。不幸的是,我无法进行身份验证,因为react-native应用程序始终显示网络请求失败
我已经尝试过端口转发: adb反向TCP:8081 TCP 8081
我尝试在本地主机:19002打开的Expo Metro Bundler窗口中从LAN切换到隧道,再切换到Localhost
_signInAsync = async () => {
try {
let response = await fetch(
'http://192.168.31.189/api/v1/auth/login', {
method: 'POST',
headers: new Headers({
'Accept': 'application/json',
'Content-Type': 'application/json',
}),
body: JSON.stringify({
email: this.state.email,
contact_no: this.state.contact_no,
password: this.state.password
})
});
let responseJson = await response.json();
console.log(responseJson);
await AsyncStorage.setItem('userToken', responseJson.access_token);
this.props.navigation.navigate('App');
} catch (error) {
console.error(error);
}
};
我无法弄清楚如何建立连接或仅在哪里出错。预期输出应为:
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9zb2NpZXR5dnJzLmFtc2J5LmxvY2FsXC9hcGlcL3YxXC9hdXRoXC9zb2NpZXR5XC9yZXNpZGVudFwvbG9naW4iLCJpYXQiOjE1NTkzMjAzMDEsImV4cCI6MTU1OTMyMzkwMSwibmJmIjoxNTU5MzIwMzAxLCJqdGkiOiJlR0Rwc3FkR3NHV2h6empOIiwic3ViIjo0LCJwcnYiOiJkMWY3MGM3YmE4MjQ2NDFhYzVhZmY2NjUyNjZlZTQ4MWE1NGJiNTVjIn0.e3WCaRVex1cMc_8jdLVRkuVu2ox496qHpYaeAqHPNeQ",
"token_type": "bearer",
"expires_in": 3600
}
上面给出的IP是我的本地以太网Wifi的IPv4,我的笔记本电脑和移动设备都连接到同一Wifi网络。我的Localhost API URL映射到apache虚拟主机 api.locnalytics.local
请让我知道是否需要更多详细信息