2014-01-07 2 views
0

У меня есть вызов ajax, и я все время сталкиваюсь с ошибкой при создании плохих запросов. Он работает, когда делается хороший запрос. Я уже пробовал jsonp и все такое, но это меня больше не помогло.Как поймать ошибку xmlhttprequest

Это errow

XMLHttpRequest cannot load No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access. 

Это мой код.

var submit = function(){ 
     var url = "" 
     var data = ["9b4e749d5cb6e069dd49cab93a69","aufujishngidrg"] 
     for(var int = 0; int < data.length; int++) { 
      console.log(data[int]) 
      url = *insert url* 
      $.ajax({ 
       type:'GET', 
       url:encodeURI(url), 
       dataType: "json", 
       contentType:"application/json; charset=utf-8", 
       error:function (xmlHttpRequest,textStatus, xhr, ajaxOptions, thrownError) { 
        if(xmlHttpRequest.readyState == 0 || xmlHttpRequest.status == 0){ 
         console.log("xmlhttpRequest error") 
         return; 
        } 
        else{ 
         console.log("error") 
        } 
       }, 
       success:function(data){ 
        console.log(data) 
       }, 
      }); 
     } 
     console.log("derp") 
    } 

Я отправляю хеш-код из списка, и сервер возвращает идентификатор, если он находится в базе данных.

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

Вопрос в следующем: как я могу уловить ошибку и продолжить повторение?

+0

Вы можете исправить код на стороне сервера, так что не бомбят, когда запись не существует? –

+0

Если это ошибка, можете ли вы использовать ключевое слово 'continue; 'для продолжения итераций через цикл? – lfender6445

+0

@ lfender6445 Нет, он либо выражает ошибку утверждения illigel, либо не имеет никакого значения. – runedisc

ответ

0

Попробуйте обертывание ваш АЯКС вызов в попытке поймать заявление проглотить ошибку

try { 
    $.ajax{ 
    error: function(xmlHttpRequest,textStatus, xhr, ajaxOptions, thrownError){ 
     throw(thrownError) 
    } 
    success: function(){} 
    } 
} catch(err) { 
    continue; 
} 
Смежные вопросы