我是javascript的新手,我试图从bitbns获取json数据,但是收到错误 - "(原因:CORS标题'Access-Control-Allow-Origin'与'https://www.bitbns.com'不匹配。)"
我在网上搜索了很多但找不到任何解决方案。
<script>
url="https://www.bitbns.com/order/getTicker";
var request = new Request(url);
fetch(request, {mode: "cors",
}).then(function(response) {
return response.json();
}).then(function(j) {
console.log(JSON.stringify(j));
}).catch(function(error) {
console.log('Request failed', error)
});
console.log(request.headers)
</script>
任何人都可以帮我这个吗?
答案 0 :(得分:0)
var proxyUrl = 'https://cors-anywhere.herokuapp.com/'
var url="https://www.bitbns.com/order/getTicker";
let x = proxyUrl + url
fetch(x, {mode: "cors",
}).then(function(response) {
return response.json();
}).then(function(j) {
console.log(JSON.stringify(j));
}).catch(function(error) {
console.log('Request failed', error)
});
&#13;
这将使事情滚滚而来,但最好不要因为缺乏安全性而将其用于生产。
https://cors-anywhere.herokuapp.com/ 是添加cors标头的链接。
答案 1 :(得分:0)
以下是我在https://www.sencha.com/forum/showthread.php?299915-How-to-make-an-ajax-request-cross-origin-CORS
上找到的内容$.ajax({
url: 'http:ww.abc.com?callback=?',
dataType: 'JSONP',
jsonpCallback: 'callbackFnc',
type: 'GET',
async: false,
crossDomain: true,
success: function () { },
failure: function () { },
complete: function (data) {
if (data.readyState == '4' && data.status == '200') {
errorLog.push({ IP: Host, Status: 'SUCCESS' })
}
else {
errorLog.push({ IP: Host, Status: 'FAIL' })
}
}
});