我开始感到绝望。 我运行一个Wordpress网站,在这里我调用了各种其他API接口。问题是我的某些电话被阻止。我已经在各种wp文件( function.php,http.php,.htaccess等)中进行了编辑,但是没有成功。问题仍然存在,但奇怪的是,只有某些API调用会被阻止。
这是两个示例调用:
var httpRequest1 = new XMLHttpRequest();
httpRequest1.open("GET", "https://api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=usd", false);
httpRequest1.send(null);
var jSONText1 = httpRequest1.responseText;
var httpRequest2 = new XMLHttpRequest();
httpRequest2.open("GET", "https://siamining.com/api/v1/network", false);
httpRequest2.send();
var jSONText2 = httpRequest2.responseText;
第一个调用没有问题,并且我得到了Json的响应,但是第二个调用得到了以下错误消息:
CORS策略已阻止从来源“ https://siamining.com/api/v1/network”访问“ http://my-website.com”处的XMLHttpRequest:请求的资源上没有“ Access-Control-Allow-Origin”标头
在我尝试过的各种文件中,
访问控制允许来源:*
插入,但这没有成功的代名词。我不明白两个电话之间的区别是什么,以及为什么第二个电话被阻止。
答案 0 :(得分:0)
https://siamining.com/api/v1/network的Access-Control-Allow-Origin标头设置为false。
唯一的解决方法是使请求服务器端具有与siamining.com对话的自己的服务器,并且现在您可以通过wordpress javascript调用提供所需响应的服务器端点。