joh*_*ine 6 android angularjs cordova ionic-framework
我已经开始在Ionic 1中构建简单的Todo应用程序,我发现了Origin头部的问题.(CORS相关)
如果我跑
ionic serve
Run Code Online (Sandbox Code Playgroud)
一切都在浏览器中工作正常,我可以在apache(tomcat)上向我的REST API发出请求.但是当我为Android甚至离子查看器构建我的应用程序时,所有请求都会失败.使用chrome调试器我设法找到问题.
本机应用程序发送标头(仅在Android上测试)
Origin: file://
Run Code Online (Sandbox Code Playgroud)
这导致我的服务器拒绝请求.在我看来,它应该与主机发送正确的Origin标头.下面附有更多细节的屏幕截图.
我该怎么办?
在这里找到相关主题:CORS,Cordova,AngularJs $ http和file://混淆
已经发布在这里,没有运气:https://forum.ionicframework.com/t/native-app-is-sending-header-origin-file-which-causes-problems/62388/1
编辑:发布时出现问题,如果我运行离子启动器(选项卡)模板只$http.post('http://myapp.com/apiv1/device')添加到控制器.
小智 1
看来问题来自服务器(特别是Tomcat)。
根据这个错误:
https://bz.apache.org/bugzilla/show_bug.cgi?id=60008
Tomcat 提供的默认 CORS 过滤器 (instances/shared/conf/web.xml) 不允许 POST 请求并返回 403。该问题从 Tomcat 版本 8.0.37 开始得到解决,因此升级服务器应该可以解决您的问题。
问候。
|   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           2893 次  |  
        
|   最近记录:  |