【问题标题】:Fetch data from local Json server in React-Native从 React-Native 中的本地 Json 服务器获取数据
【发布时间】: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
  • 您正在尝试使用调试模式对吗?

标签: reactjs react-native fetch json-server


【解决方案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,它工作正常,谢谢
猜你喜欢
  • 1970-01-01
  • 2015-06-09
  • 1970-01-01
  • 2019-07-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-18
  • 1970-01-01
相关资源
最近更新 更多