我不明白为什么,但我的 CORS 调用不起作用。
我将元标记添加到index.html
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'">
我的 Android list 有:
<uses-permission android:name="android.permission.INTERNET" />
我的通话标题是:
Access-Control-Allow-Headers → Content-Type
Access-Control-Allow-Methods → GET,PUT,POST,DELETE
Access-Control-Allow-Origin → *
在我的 config.xml 中我有
<access origin="*" />
<plugin name="cordova-plugin-whitelist" version="1" />
我的代码是
var request = new XMLHttpRequest();
request.open("GET", "http://XXXXXXXXXX/XXXXX", true);
console.log("test");
request.onreadystatechange = function () {
console.log("DOES NOT COME HERE?")
if (request.readyState == 4) {
if (request.status == 200 || request.status == 0) {
alert(code);
var product = JSON.parse(request.responseText);
alert(product.CNK);
}
}
“DOES NOT COME HERE”没有被打印,日志中也没有打印错误?我真的不知道我做错了什么:(
最佳答案
好吧,这个解决方案太愚蠢了,我一直在寻找这个
var request = new XMLHttpRequest();
request.open("GET", "http://XXXXXXXXXX/XXXXX", true);
console.log("test");
request.send()
request.onreadystatechange = function () {
console.log("DOES NOT COME HERE?")
if (request.readyState == 4) {
if (request.status == 200 || request.status == 0) {
alert(code);
var product = JSON.parse(request.responseText);
alert(product.CNK);
}
}
如你所见,我添加了 request.send() :)
关于javascript - Cordova CORS 调用无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30506378/