JS Проверка сайта на CORS ошибку

Статус
В этой теме нельзя размещать новые ответы.

lorgon

Известный
Автор темы
656
271
У меня есть массив сыллок на сайты (типо : ['url1.com', 'url2.com']) и некоторые из них выдают ошибку 403, а некоторые нет. Как мне детектить именно ошибку, чтобы при этом у меня не крашилось всё?
Уже всё пытался(трай,катч - хуяч), всё равно крашит. Вот так отправляю запрос:
Код:
var req = new XMLHttpRequest();
req.open('GET', url, false);
req.send(null)
1671749196817.png
 

molimawka

Известный
Друг
443
655
Интересно, отработает ли этот метод при флаге async false, то есть синхронном запросе. Без доебов, просто сам хз точно. Лучше бы топик стартер fetch заюзал и все
 

D3.Pheonix

🎹
Модератор
2,867
1,644
Интересно, отработает ли этот метод при флаге async false, то есть синхронном запросе. Без доебов, просто сам хз точно. Лучше бы топик стартер fetch заюзал и все
Та я не юзал хмл, в теории только понимаю как работает.
Асинк/эвейт + фетч было бы проще
Вообще увидеть бы как он это делает
 
Последнее редактирование:

lorgon

Известный
Автор темы
656
271
Спасибо за ответы, но у меня это не сработало(заранее, я еблан и не шарю в вебе почти).
Я пробовал фетч, но он в конечном итоге всё равно крашил всё.

У меня есть код, который должен поочереди перебрать массив с ссылками, не ассинхронно(наверное). И если ссылка норм - то цикл завершается. И только после этого должна сработать нужная функция. Что-то типо

JavaScript:
var link = ""
for (i=0; i < links.length; i++){
    link = links[i];
    if (ссылкаНорм(link)){
        break;       
    }
}
randFunc(link);
И вот с этой функцией "ссылкаНорм" проблемы.
 

D3.Pheonix

🎹
Модератор
2,867
1,644
JavaScript:
const checkForErrors = async (array) => {
  for (const url of array) {
    try {
      const res = await fetch(url);
      if (res.ok) {
        return url;
      }
    } catch (error) {
    console.log(error);
    }
  }
}

checkForErrors(links).then((link) => link && randFunc(link))
 
Последнее редактирование:

lorgon

Известный
Автор темы
656
271
JavaScript:
const checkForErrors = async (array) => {
  for (const url of array) {
    try {
      const res = await fetch(url);
      if (res.ok) {
        return url;
      }
    } catch (error) {
    console.log(error);
    }
  }
}

checkForErrors(links).then((link) => link && randFunc(link))
Потестил, вроде ничего не крашит, но та ошибка красная всё равно всплывает.
Спасибо
 
Статус
В этой теме нельзя размещать новые ответы.