我正在使用 javascript 来使用此站点上的 API https://www.luno.com/en/api而且我不明白为什么我没有收到任何数据。如果我只输入这个网址:https://api.mybitx.com/api/1/ticker?pair=XBTZAR我确实在浏览器中收到数据。
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
var myObj = JSON.parse(this.responseText);
document.getElementById("luno").innerHTML = myObj.bid;
}
};
xmlhttp.open("GET", "https://api.mybitx.com/api/1/ticker?pair=XBTZAR", true);
xmlhttp.send();
为什么它不返回任何东西?
最佳答案
您遇到了 CORS 的问题请求。
您不能从 JS 代码调用 API,因为 api.mybitx.com
会阻止跨域请求。
你有几个解决方案:
创建自己的服务器端 API 方法。 从您的 JS 代码中调用此方法。 在 API 方法中使用 WebRequest 调用
api.mybitx.com
API或 RestSharp .如果你只想在 JS 代码上做,那么你需要使用 EasyXDM图书馆。
对我来说,第一个解决方案更简单、更正确。
关于javascript - 使用 JavaScript 交换 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48388029/