2015-10-22 2 views
0

Проблема в том, что я делаю два вызова ajax на один и тот же сайт, но с разными веб-страницами. Обе веб-страницы являются общедоступными, но одна из них дает мне проблемы с доступом-контролем-разрешением-возникновением.Контроль доступа, вызывающий проблемы при разных вызовах

Вызов 1:

$.ajax({ 
    type: 'GET', 
    url: 'http://osrm.jrgold.me/ParkingAvailability.php', 
    data: '', 
    crossDomain:true, 
    success: function (response) { 

    response = JSON.parse(response); 
     for (var i = 0; i < response.lots.length; i++) { 
      $('#' + response.lots[i].lot).html(response.lots[i].space); 
     } 
    }, 
    error: function (req, status, err) { 

    } 
}); 

Вызов 2:

$ .getJSON (URL, функция (результат) {

  var x = result.route_summary.total_time/60; 
      var data = {timeValue: x }; 

      $.ajax({ 
       type: "GET", 
       url: "http://osrm.jrgold.me/prediction.php", 
       data: data, 
       crossDomain:true, 
       success: function (response) { 
        alert(response); 
       }, 
       error: function (req, status, err) { 
        //alert(req[1] + " " +status + ": " + err); 
       } 
      }); 
     }); 

Как я уже сказал Зов 1 работает нормально, но назвать 2 не хочу? Я хочу подтвердить, что это не проблема с разрешениями на страницах, прежде чем я свяжусь с владельцем страниц.

ответ

0

Ответ от prediction.php не содержит заголовка Access-Control-Allow-Origin. Вы не можете обойти это, в компетенцию владельца сайта входит разрешение или ограничение доступа к этому ресурсу.

Дополнительная информация в How does Access-Control-Allow-Origin header work? вопрос.

0

Как упомянуто выше, проблема связана с сервером, в частности с файлом php. Для решения Access-Control-Allow-Origin можно просто добавить:

header('Access-Control-Allow-Origin: *'); 

К верхней части файла PHP.

Смежные вопросы