javascript - 部署到设备时,Http 请求在 ionic 应用程序中不起作用

标签 javascript android angular ionic-framework

我正在开发 ionic 应用程序,它应该向 api 发出 http 请求。这意味着我无法更改服务器端设置。我正在使用 Angular http 模块。我的第一次尝试导致了 CORS 错误,我设法通过使用如下代理来修复:

"proxies": [
    {
      "path": "/api",
      "proxyUrl": "https://api.com/api/"
    }
  ]

当使用 ionic serve 时,这在浏览器中工作得很好,但是当部署到设备时,请求似乎不起作用。

当使用浏览器时,它会给出状态代码 200 和正确的响应。 Response code

部署后似乎返回了相同的响应,但在控制台中显示以下 error显示(这是使用谷歌浏览器中的远程设备检索的),请求的响应选项卡也是空的。

编辑: 我检查了 AndroidManifest.xml 文件,它包含互联网权限。但是,我尝试使用完整的 URL 而不是代理 URL 将其构建到 android,但随后应用程序意外关闭。

最佳答案

那么您是直接使用第 3 方 API 吗?通常这被认为是一种不好的做法,因为您必须在客户端应用程序上存储或检索您的 API key 。我建议您对 API 实现自己的后端和代理请求。 如果没有 key ,或者您根本不关心安全性,您可以尝试其他解决方案,这里有一篇关于 CORS 的精彩文章: https://ionicframework.com/docs/faq/cors

关于javascript - 部署到设备时,Http 请求在 ionic 应用程序中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56825321/

相关文章:

android - 导航架构组件 - 带有 CollapsingToolbar 的详细 View

Android Camera2 + MediaCodec + MediaMuxer 使用持久表面?

html - 修改父类的CSS

javascript - 连接查询参数并将它们添加到 url

javascript - 如何在 Angular 6 中动态创建的按钮上绑定(bind)单击事件?

Javascript Concat int 到 html id NaN

javascript - 如何从 javascript 变量发送表单值并在 php 中以整数形式接收?

javascript - 用 JS 移动 div(已编辑)

java - 如何防止方法被调用两次?

javascript - html5 将文件拖动到输入 - 我可以多次拖动到同一输入中并添加文件而不是替换文件吗?