请求太多:如何减少请求但获得相同的结果?

时间:2017-11-21 06:18:37

标签: javascript jquery ajax rest api

我想知道我是否可以增强此代码以提高效率,是否有办法减少对服务器的请求但返回18个网址,然后通过这些网址从中提取一些数据?另外,如何通过刷新页面来防止访问者提出太多请求?我已经包含了我的API密钥,因此可以轻松完成测试,

由于

getMatches();  

function getMatches(date = new Date()){
    $.ajax({
    headers: {'X-Auth-Token': 'df1a8a16d34a49ab86f522b37f53f597'},
    url: 'http://api.football-data.org/v1/competitions',
    type: 'GET',
    dataType: 'json',
    success: function(data){
                $.each(data, function(index, val) {
                $.each(val._links.fixtures, function(index, val) {
                loadMatches(name, val, date);
                });

            });
        },// end success
    error: function(jqxhr, ajaxOptions, thronError){
            alert('too many refresh, STOP IT');
        }
});
}


function loadMatches(leagueName,  url, date){
        date.setHours(0,0,0,0);
        $.ajax({
            headers: {'X-Auth-Token': 'df1a8a16d34a49ab86f522b37f53f597'},
            url: url,
            type: 'GET',
            dataType: 'json',
            success: function(data){
                var output = '';
                $.each(data.fixtures, function(index, el) {
                    var matchDate = el.date.substr(0, 10).split('-');               
                    matchDate = new Date(matchDate);
                    matchDate.setHours(0,0,0,0);
                    if(matchDate.valueOf() === date.valueOf()){                 
                        if(el.status == 'FINISHED'){
                              //do somrthing
                        }



                    }


                });
                    $("#display").append(output);


            }
        });
    }

0 个答案:

没有答案
相关问题