ios - MacO 和 iO 上 Safari 的 React 和 Axios GET 请求问题

标签 ios reactjs macos safari axios

我正在尝试使用 Axios 进行 API 请求,它适用于每个 Windows 和 Android 浏览器,但不适用于 MacOs Safari(但在 Chrome 中它可以正常工作)或任何 iOs 浏览器。

在相同的代码中,我再次调用相同的 API(不同的端点),它在 safari 和 iO 中完全没有问题。

当我 console.log 抛出的异常结果是网络错误。

我不认为这是 CORS 问题,因为它适用于其他浏览器。

我的请求:

try {
  const response = await api.get(
    "/precos/get",
    {
      headers: {
        'Content-Type': 'application/json'
        'token': getToken()
      }
    }
  );

  this.filtraProdutoPorTabela(response.data.data);
} catch (err){
  // do something with the error
}

控制台错误:

网络错误
{"url":"http://url/precos/get ","method":"get","headers":{"Accept":"application/json, text/plain,/","this.state-Type":"application/json","token":”e…c”},”baseURL”:”基本 url”,”transformRequest":[null],"transformResponse":[null],"timeout":0,"xsrfCookieName":"XSRF-TOKEN","xsrfHeaderName":"X-XSRF-TOKEN","maxContentLength":-1,"httpsAgent":{}}}

最佳答案

我能想到的唯一导致这种情况的问题是,您肯定将计算机上的链接设置为例如:http://localhost:5000/api/posts
这很好用,因为你是在同一台机器上做的,但是当你在移动设备或任何其他设备上尝试时,当浏览器尝试访问该路由时,它会看到 url 的 localhost 部分,它指向它自己而不是你的实际机器。
要解决这个问题,您必须输入机器的 IP 地址和端口,而不是文字“localhost”。
从:
http://localhost:5000/api/posts
至:
http://192.168.1.23:500/api/posts
http://{ 你的 IP 地址 }:5000/api/posts

关于ios - MacO 和 iO 上 Safari 的 React 和 Axios GET 请求问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59646447/

相关文章:

ios - 如何在 ios 中用图像制作 Accordion

iphone - IOS 自定义图标电子邮件附件

iphone - 如何在允许的一百个临时安装之一上安装应用程序?

javascript - 从 JSON 中删除 src 以创建图像

javascript - 使用 React 动态标题标题

excel - 如何从 Excel Mac 访问 Postgres 数据库?

ios - MKMapView 防止注解分组

css - 如何在 React Ant 设计布局中使 Logo (图像)响应?

c++ - 在 MAC OS X 上创建桌面快捷方式(如 .desktop 在 linux 上)

c++ - 如何使用 C++ 在 OSX 中获取当前用户的语言环境