React native axios在react native中获取请求不工作

React native axios在react native中获取请求不工作,react-native,axios,react-native-android,React Native,Axios,React Native Android,我已使用redux将axios集成到react本机应用程序中。设置axios配置后,我无法访问后端api。最后,我在component Dod mount中遇到了一个虚拟api,它也不起作用 在使用react native redux和axios浪费了2天之后,我尝试了使用postman提供响应的虚拟api,但使用axios我的api没有被调用 import React, { Component } from 'react'; import { View, Text } from 'react-

我已使用redux将axios集成到react本机应用程序中。设置axios配置后,我无法访问后端api。最后,我在component Dod mount中遇到了一个虚拟api,它也不起作用

在使用react native redux和axios浪费了2天之后,我尝试了使用postman提供响应的虚拟api,但使用axios我的api没有被调用

import React, { Component } from 'react';
import { View, Text } from 'react-native';
import axios from 'axios';

class IdeaList extends Component {
    componentDidMount = () => {
        debugger;
        let response = axios.get('https://192.168.0.1:63418/Values/Get').then(res => console.log('here comes data',res.data)).catch(err => console.log('err is', err));
        return response
    }
    render() {
        return (
            <View>
                <Text>IdeaList</Text>
            </View>
        )
    }
}

export default IdeaList;
import React,{Component}来自'React';
从“react native”导入{View,Text};
从“axios”导入axios;
类理想主义扩展组件{
componentDidMount=()=>{
调试器;
let response=axios.get('https://192.168.0.1:63418/Values/Get然后(res=>console.log('herecomedata',res.data)).catch(err=>console.log('erris',err));
返回响应
}
render(){
返回(
理想主义者
)
}
}
出口违约理想主义;

我只想点击我的后端api并获得响应

您发出请求的方式没有问题,您应该可以查看控制台日志

如果不是,那就意味着你的API URL有问题,你应该调查一下


但是,您应该注意,您定义的
response
变量将不包含返回的数据,除非您将
componentDidMount
设置为异步函数并使用。此外,
componentDidMount
不需要返回任何值。如果要在渲染函数中使用响应,则最有可能将其存储在组件的状态中。

发出请求的方式没有问题,您应该查看控制台日志

如果不是,那就意味着你的API URL有问题,你应该调查一下


但是,您应该注意,您定义的
response
变量将不包含返回的数据,除非您将
componentDidMount
设置为异步函数并使用。此外,
componentDidMount
不需要返回任何值。如果要在渲染函数中使用响应,则最有可能将其存储在组件的状态中。

您使用的
axios
版本是什么?“axios”:{“版本”:“0.19.0”,“已解决”:“完整性”:“sha512-1uvKqKQta3KBxIz14F2v06AEHZ/DIOEKFBTRKK1E5OQJDNUEERLMYTGB5AIQZHJCLJPG1TURZDJDR06QNK0DQ=”,“需要”:{“跟随重定向”:“1.5.10”,“is缓冲区”:“^2.0.2”},我注意到在您的代码片段中,您试图调用
httpa://192.168.0.1:63418/Values/Get
这是一个无效的地址。您可以尝试验证url吗?另外,您有一个
调试器
代码将暂停您的程序执行。尝试删除它。我已经尝试使用http和https,调试器用于检查响应您使用的是
axios版本吗?“axios”:{“版本”:“0.19.0”,“已解决”:“完整性”:“sha512-1uvKqKQta3KBxIz14F2v06AEHZ/DIOEKFBTRKK1E5OQJDNUEERLMYTGB5AIQZHJCLJPG1TURZDR06QNK0DQ=”,“需要”{“跟随重定向”:“1.5.10”,“is缓冲区”:“^2.0.2”},我注意到在您的代码片段中,您试图调用
httpa://192.168.0.1:63418/Values/Get
这是一个无效的地址。您可以尝试验证url吗?另外,您有一个
调试器
代码将暂停您的程序执行。尝试删除它。我已经尝试使用http和https,调试器用于检查响应我的api应该在我使用调试器的地方受到攻击。我使用async和Wait来处理Promise,而不是使用async和Wait。使用
然后
是可以的,但是通过编写
let response=axios.get(…)。然后(…)
表明您不了解正在发生的事情。
reponse
在这里是无用的,并且永远不会包含API返回的任何数据。由于代码使用的是不同的URL,问题一定来自API。API方面发生了什么事?您有任何错误吗?您确定返回了数据吗?请尝试记录服务器上的请求以及返回之前的数据。我们无法真正帮助您,因为我们没有您的API代码。我也遇到了同样的问题,但没有任何进展。当我使用一些假API或rest API(带有某个域名的托管API)时,会发生什么情况我使用fetch和axios都得到了响应。但是当我尝试点击我的后端api时,我总是得到网络错误。我在genymotion上尝试了10.0.0.2:59454/api/list,10.0.2.2:59454/api/list,但没有任何效果。我的api应该在我使用调试器的地方被点击。我不再使用异步和等待,而是用它来处理承诺可以使用
then
但是通过编写
let response=axios.get(…).then(…)
表明您不了解正在发生的事情。
reponse
在这里是无用的,并且永远不会包含API返回的任何数据。由于代码使用的是不同的URL,问题一定来自API。API方面发生了什么事?您有任何错误吗?您确定返回了数据吗?请尝试记录服务器上的请求以及返回之前的数据。我们无法真正帮助您,因为我们没有您的API代码。我也遇到了同样的问题,但没有任何进展。当我使用一些假API或rest API(带有某个域名的托管API)时,会发生什么情况我使用fetch和axios都得到了响应。但是当我尝试点击我的后端api时,我总是得到网络错误。我在genymotion:59454/api/list上尝试了10.0.0.2:59454/api/list,但没有任何效果