2017-07-20 56 views

回答

0

你可以打API直接。无需制作jsonp请求。该域名已经有Access-Control-Allow-Origin:*头意味着你可以直接与任何域的API交互。不会涉及跨域问题。

这是普通的JavaScript解决方案。如果您使用jQuery,则可以直接使用$.get$.ajax函数。

var xhr = new XMLHttpRequest(); 
 
xhr.open("GET", "https://cricapi.com/api/cricket?apikey=TESTKEY0273", true); 
 
xhr.onload = function (e) { 
 
    if (xhr.readyState === 4) { 
 
    if (xhr.status === 200) { 
 
     var dataRec = JSON.parse(xhr.responseText); 
 
     showData(dataRec); 
 
    } else { 
 
     console.error(xhr.statusText); 
 
    } 
 
    } 
 
}; 
 
xhr.onerror = function (e) { 
 
    console.error(xhr.statusText); 
 
}; 
 
xhr.send(null); 
 

 
function showData(list){ 
 
    list.data.forEach(function(v){ 
 
    
 
    var div = document.createElement('div'); 
 
    div.style.border = "1px solid"; 
 
    div.style.padding = "10px"; 
 
    var span = document.createElement('span'); 
 
    span.innerText = "Title : " + v.title; 
 
    div.appendChild(span); 
 
    var elem = document.getElementById("match"); 
 
    elem.appendChild(div); 
 
    
 
    }); 
 
}
<div id="match"> 
 
Matchs : 
 

 

 
</div>

+0

您可以在html中解析 –

+0

@AkashMalviya更新为插入html。我已经发布了标题..您也可以为其他项目进行类似的输入。 –

+1

感谢阿图尔的帮助和友好的姿态 –

0

如果你可以使用jQuery,你可以使用方法getJSON

$.getJSON("https://cricapi.com/api/cricket?apikey=TESTKEY0273", 
 
    function(data) { 
 

 
    data.data.forEach(function(item) { 
 
     for (var key in item) { 
 
     $("#content").append($("<div />").append("<span>" + key + ": </span>").append(item[key])); 
 
     } 
 
     $("#content").append("<hr />"); 
 
    }); 
 
    });
#content>div { 
 
    margin-bottom: 10px; 
 
} 
 

 
#content span { 
 
    font-weight: bold; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<div id="content"> 
 
</div>

+0

是什么让你认为OP使用jQuery? –

+0

@FelixKling,这是一个选项。 – H77

+0

你可以解析为innerhtml –