我正在开发 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/