django、cordova、ionic 和 angular.js 的 CORS 问题

Posted

技术标签:

【中文标题】django、cordova、ionic 和 angular.js 的 CORS 问题【英文标题】:CORS Issue with django, cordova, ionic and angular.js 【发布时间】:2016-10-19 02:58:41 【问题描述】:

我使用 django cors headers 插件来处理我的所有跨源访问问题。

我们实现了一个带有 angular、cordova 和 ionic 的 webapp,它应该可以访问 django 后端的端点。

后端在 debian 服务器上运行,我将 CORS_ORIGIN_WHITELIST 设置为 ("our_web_dev_server_ip", "our_web_prod_server_ip")

当我尝试从本地主机调用我的端点时,它给了我一个跨源错误。

如果我将CORS_ORIGIN_ALLOW_ALL 设置为True,它将完美运行。 当我检查我的 django 日志时,我可以看到请求 IP 是 Web 开发服务器的 IP。

那么为什么我在设置中将此ip添加到白名单时请求失败?有什么想法吗?

【问题讨论】:

客户端应用程序中有任何错误跟踪吗?你能发布你的 config.xml 吗? 【参考方案1】:

问题在于 Webstorm 集成服务器,它在 localhost 和标准端口 63342 上为客户端提供服务。

刚刚将localhost:63342 添加到CORS_ORIGIN_WHITELIST,现在可以使用了。

【讨论】:

以上是关于django、cordova、ionic 和 angular.js 的 CORS 问题的主要内容,如果未能解决你的问题,请参考以下文章

ionic3打包出错ionic cordova build android(系列一):could not find an installed version of gradle either in a

JDK 1.8 在 ionic cordova build android 上的要求检查失败

Ionic - 在 android 的不同目录中创建 SQLite 数据库

could not find an installed version of gradle either in android studio

ionic 和cordova的区别是啥

Cordova笔记三:ionic+angular+cordova技术栈