我用Cordova创建了一个Android应用程序,在模拟器上它就像一个魅力。当我试图在设备上运行它时,我没有通过登录屏幕,因为我收到错误说:" Access-Control-Allow-Origin"不允许使用Origin。这是Cordova中的CSP问题还是我的服务器出了问题? 一些Config.xml:
<access origin="*" />
<access origin="baseUrlToServer.com" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
我在Index.html的CSP metatag:
<meta http-equiv="Content-Security-Policy" content="default-src 'self' *UrlToServer.com;
style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'"/>
有没有人偶然发现类似的东西并有想法?非常感谢帮助:)
答案 0 :(得分:1)
问题在于服务器端。
您的服务器必须回复一些HTTP RESPONSE HEADERS
,其中包括:
Access-Control-Allow-Origin: *
<IfModule mod_headers.c>
Header add Access-Control-Allow-Origin "*"
Header add Access-Control-Allow-Headers "origin, x-requested-with, content-type"
Header add Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"
</IfModule>