Android 5 origin';文件://';因此,在安卓6运行时不允许访问
我正在使用ionic 2框架开发一个应用程序,遇到了一个奇怪的问题 我正在使用HTTPS与我的Web服务进行通信,Android 5 mobile向我抛出了“无访问控制允许来源”标题问题,而Android 6通过返回一个结果工作正常 经检查,这可能与CORS和服务器配置中不存在的“访问控制允许来源”标题有关 Android 5 HTTPS请求头 Android 6 HTTPS请求头 这是我在手机端的内容安全策略:Android 5 origin';文件://';因此,在安卓6运行时不允许访问,android,ionic-framework,https,cors,ionic2,Android,Ionic Framework,Https,Cors,Ionic2,我正在使用ionic 2框架开发一个应用程序,遇到了一个奇怪的问题 我正在使用HTTPS与我的Web服务进行通信,Android 5 mobile向我抛出了“无访问控制允许来源”标题问题,而Android 6通过返回一个结果工作正常 经检查,这可能与CORS和服务器配置中不存在的“访问控制允许来源”标题有关 Android 5 HTTPS请求头 Android 6 HTTPS请求头 这是我在手机端的内容安全策略: <meta http-equiv="Content-Security-P
<meta http-equiv="Content-Security-Policy" content="default-src *; script-src 'self' 'unsafe-inline' 'unsafe-eval' *; style-src 'self' 'unsafe-inline' *">
这是错误消息
我猜这是由于HTTP头中的源代码是“file://”,这是导致问题的原因
如果可能,我不希望更改服务器配置。由于这只会影响我的安卓5,我很困惑我在哪里做错了
更新:
对其他手机进行了几次测试,发现我只能支持Android 5.1.1及以上版本。5.0.1版(即本问题中的原始手机)仍无法支持
更新2:
在服务器配置中启用了CORS,显然它适用于Android 5.0.1。但仍不知道根本原因
webserv()
{
var request = require('request');
return new Promise(function(fulfill, reject) {
request({
url: 'https://address,
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
form: {}
}, function(error, response, body) {
if (error) {
// reject the promise, handle with .catch
console.log("Error: "+error);
reject(error);
} else {
console.log(response.statusCode, body);
fulfill(body);
}
});
});
}