如何将laravel与react native连接起来

如何将laravel与react native连接起来,laravel,react-native,Laravel,React Native,我是react native的新手,所以我不知道如何将laravel rest api与react native连接起来。 我的第一个问题是,laravel在我的wifi ip地址上运行,而react native在我的wifi ip地址上运行,所以两者都在不同的主机和端口上运行,所以这有什么问题吗,或者可以吗? 其次,如何从LaravelAPI获取数据,我在app.js文件中创建了类似的内容 class App extends React.Component{ constructor()

我是react native的新手,所以我不知道如何将laravel rest api与react native连接起来。 我的第一个问题是,laravel在我的wifi ip地址上运行,而react native在我的wifi ip地址上运行,所以两者都在不同的主机和端口上运行,所以这有什么问题吗,或者可以吗? 其次,如何从LaravelAPI获取数据,我在app.js文件中创建了类似的内容

class App extends React.Component{
  constructor()
  {
    super();
    this.state={
      data :[]
    }
  }
  componentDidMount()
  {
    this.callApi();
  }
  async callApi()
  {
    
    let data=await fetch('http://127.0.0.1:8000/api/users')
    let adata= await data.text();
    this.setState({data:adata})
    console.warn(ddata)
    
  }
  render(){
    console.warn("render",this.state.data)
    return(
      <View>
         <Text style={{fontSize:50}}>FlatList</Text>
         <FlatList 
        data={this.state.data}
        renderItem={({item})=><Text style={{fontSize:50}}>{item.name}</Text>}
        keyExtractor={(item, index) => index.toString()}
        />
      </View>
    )
  }
}

export default App;
类应用程序扩展了React.Component{
构造函数()
{
超级();
这个州={
数据:[]
}
}
componentDidMount()
{
这是callApi();
}
异步调用API()
{
让数据=等待获取('http://127.0.0.1:8000/api/users')
让adata=wait data.text();
this.setState({data:adata})
控制台警告(ddata)
}
render(){
console.warn(“呈现”,this.state.data)
返回(
扁平列表
{item.name}
keyExtractor={(项,索引)=>index.toString()}
/>
)
}
}
导出默认应用程序;

但是这给了我很多错误

您的两台设备应该在同一个网络上(即如果您使用两台设备)。对于emulator,您可以在react native项目中通过localhost使用laravel api,但对于实际的移动电话(如果您使用的是expo),其localhost与您的计算机的localhost不同,因此可能存在网络错误。
托管api更好,(我就是这么做的)它解决了很多问题。至于这些错误,请向我们展示。

如果您在同一个wifi网络上,您必须使用ip而不是
localhost:8000
127.0.0.1:8000
,如

192.168.1.2:8000


[您的ip]:[端口]

发生了什么错误?我看到fetch参数中有一个额外的空间?这是一个错误,但我的fetch api不工作