Angularjs 爱奥尼亚|基于SOAP的web服务|例外:';访问控制允许原点';丢失的

Angularjs 爱奥尼亚|基于SOAP的web服务|例外:';访问控制允许原点';丢失的,angularjs,web-services,soap,ionic-framework,ionic,Angularjs,Web Services,Soap,Ionic Framework,Ionic,我正在使用IONIC框架开发移动应用程序,我想访问基于SOAP的web服务,我发现了这一点 我正在访问基于soap的公共部署。我已经在SOAP-UI中测试了上述基于SOAP的web服务,并且我能够访问该web服务,但是当我从ionic framework访问同一web服务时,它会抛出一个异常: 已阻止跨源请求:同一源策略不允许读取位于的远程资源。(原因:缺少CORS标头“访问控制允许原点”) 有人能告诉我是什么问题吗 这可能是白名单问题。通过以下命令安装爱奥尼亚白名单插件: ionic plug

我正在使用IONIC框架开发移动应用程序,我想访问基于SOAP的web服务,我发现了这一点

我正在访问基于soap的公共部署。我已经在SOAP-UI中测试了上述基于SOAP的web服务,并且我能够访问该web服务,但是当我从ionic framework访问同一web服务时,它会抛出一个异常:

已阻止跨源请求:同一源策略不允许读取位于的远程资源。(原因:缺少CORS标头“访问控制允许原点”)


有人能告诉我是什么问题吗

这可能是白名单问题。通过以下命令安装爱奥尼亚白名单插件:

ionic plugin add https://github.com/apache/cordova-plugin-whitelist.git
尝试在“config.xml”中通过白名单列出所有网络流量:

<allow-navigation href="*" />

CORS是服务器上启用的东西。您必须确保被查询的服务器发送的邮件头

访问控制允许源*

一旦做到这一点,这个问题就应该得到解决。在您的案例中,XML请求被阻止,因为服务器响应中不存在这些头

更多信息可以在这里找到

但是

出于开发目的,您可以尝试在开发阶段使用chrome扩展作为变通方法

试试看:

注意:在生产中,您应该在服务器端启用它。 但在开发过程中,您可以尝试使用插件来禁用安全性