【问题标题】:React native Axios post request works in iOS simulator but not physical phoneReact 本机 Axios 发布请求适用于 iOS 模拟器,但不适用于物理手机
【发布时间】:2021-12-15 19:37:19
【问题描述】:

目前在客户端添加注册请求

  const { email, password } = params;
  console.log(params);
  const response = await axios.post('http://localhost:8080/api/v1/auth/register', { email: email, password: password });

适用于模拟器但不适用于 iPhone。这可能是什么原因?该请求也适用于邮递员

【问题讨论】:

  • 你是如何在实际 iPhone 上运行 Web 服务器的?
  • 您可以尝试在您的 Infoplist 文件 stackoverflow.com/a/40047949/7956161 中启用 NSAllowsLocalNetworking
  • 手机是否连接到网络服务器正在运行的同一网络?

标签: react-native axios expo


【解决方案1】:

您可以将您的网络服务器配置为在网络内可访问的 IP 上运行,或者您可以使用ngrok 之类的工具将您的网络服务器公开到互联网(尽管这会产生安全风险)。

您还需要确保您没有使用 localhost 作为 API 基本 URL,否则您的手机会尝试将请求发送给自己并失败。

【讨论】:

  • 感谢您的提示!这对我有用
猜你喜欢
  • 2020-04-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-01-12
相关资源
最近更新 更多