我正在使用XMLHttpRequest()与API连接,并且在控制台中,我有关于被CORS策略阻止的错误。我的网址使用https。如何与该API连接?我需要一些API-KEY或类似的东西吗?
我安装了chrome的Allow-Control-Allow-Origin扩展程序。没有帮助
示例:
function UserAction() {
var xmlhttp = new XMLHttpRequest();
// xmlhttp.setRequestHeader('Accept', 'application/json');
xmlhttp.withCredentials = true;
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
var myObj = JSON.parse(this.responseText);
document.getElementById("demo").innerHTML = myObj.high;
}
};
xmlhttp.open("GET", "https://sinsmbe1.insepa.net:20106/m3api-rest/execute/CRS610MI/LstByNumber;maxrecs=100;returncols=CUNO,STAT?CUNO=10000", true);
xmlhttp.send();
}
我从控制台获得3条信息。
警告:
用于从中加载资源的连接 https://sinsmbe1.insepa.net:20106使用了TLS 1.0或TLS 1.1,它们分别是 不推荐使用,以后将被禁用。一旦禁用,用户 将被阻止加载这些资源。服务器应该 启用TLS 1.2或更高版本。看到 https://www.chromestatus.com/feature/5654791610957824了解更多 信息。
错误:
在以下位置访问XMLHttpRequest 'https://sinsmbe1.insepa.net:20106/m3api-rest/execute/CRS610MI/LstByNumber;maxrecs=100;returncols=CUNO,STAT?CUNO=10000' 来自来源“ null”的邮件已被CORS政策阻止:对 预检请求未通过访问控制检查:否 请求中存在“ Access-Control-Allow-Origin”标头 资源。
警告:
跨源读取阻止(CORB)阻止了跨源响应 https://sinsmbe1.insepa.net:20106/m3api-rest/execute/CRS610MI/LstByNumber;maxrecs=100;returncols=CUNO,STAT?CUNO=10000 MIME类型为application / vnd.sun.wadl + xml。看到 https://www.chromestatus.com/feature/5629709824032768了解更多 详细信息。
答案 0 :(得分:0)
您必须在api的开头添加以下标头:
res.header("Access-Control-Allow-Origin","*");
res.header("Access-Control-Allow-Headers","Origin,X-Requested-With,Content-Type,Accept");