从 React-Native 中的本地 Json 服务器获取数据

Posted

技术标签:

【中文标题】从 React-Native 中的本地 Json 服务器获取数据【英文标题】:Fetch data from local Json server in React-Native 【发布时间】:2018-09-26 22:21:35 【问题描述】:

我的本​​地 Json 服务器数据是这样的:

我在服务器上使用过:

import axios from 'axios';
const Server = axios.create(
  baseURL: 'http://localhost:3000/office',
  timeout: 5000,
  headers: 'accept': 'application/json'
);
export default Server;

但我无法获取它,我需要帮助从本地 json 服务器获取它。

export function fetchJobs(props) 
  return function(dispatch)
    dispatch(type: JobsTypes.FETCH_OFFICE);
    Server
    .get('/office')
    .then((response) => 
      dispatch(type: JobsTypes.FETCH_OFFICE_SUCCESSFUL,payload:response.data );
    )
    .catch((err) => 
      dispatch(type:JobsTypes.FETCH_OFFICE_FAILED,payload:err);
    );
  
 

【问题讨论】:

我觉得你需要改一下baseURL: 'http://localhost:3000' @PritishVaidya 试过了,还是一样。谢谢。 你得到什么错误?同时尝试记录错误和响应。 没有错误,页面只是空白,在网络响应中没有localhost 3000 您正在尝试使用调试模式对吗? 【参考方案1】:

我假设您使用的是 android 虚拟设备?

本地主机将是:10.0.2.2 所以在你的情况下你必须使用:'http://10.0.2.2:3000'

让我知道这是否适合你。

好的,只是为了向其他回答相同问题的人澄清一下:

如果您在开发机器上使用Android Virtual Device,那么您需要使用http://10.0.2.2:<port> 才能与在http://localhost:<port> 上运行的开发服务器通信

如果您使用的是物理设备,请确保它与您的开发机器位于同一网络中,并将10.0.2.2 部分替换为您的开发机器 ip。

【讨论】:

是的,我已经通过 USB 调试连接到我的手机。仍然是同样的问题。谢谢。 将本地主机更改为我的计算机IP,它工作正常,谢谢

以上是关于从 React-Native 中的本地 Json 服务器获取数据的主要内容,如果未能解决你的问题,请参考以下文章

react-native - 图像需要来自 JSON 的本地路径

如何从 fetch 中获取 JSON 数据(react-native)

使用React-Native从嵌套JSON获取数据

获取 JSON 并遍历 react-native 中的值

如何使用 React-native 访问 Django 本地服务器数据?

react-native 中的本地数据备份