#javascript #reactjs #redirect #fetch #load
Вопрос:
Поэтому я перенаправляю пользователей на динамические IP-адреса в React, IP-адреса генерируются серверными серверами и работают просто отлично!
Проблема здесь в том, что для загрузки серверов требуется время, и когда пользователь перенаправляется в эту конкретную комнату, в течение следующих 10-15 секунд отображается ошибка 404 «Не найдено», и если вы обновите страницу после этого определенного времени, страница будет загружена.
Я попытался добавить запрос на извлечение в URL-адрес, и как только он вернет статус 200, я остановлю счетчик и перенаправлю на этот URL-адрес, но статус никогда не показывает 200.
let res = await fetch(`http://${ipAddress}`, {'mode': 'no-cors'});
while(res.status === 0) {
await new Promise(resolve => setTimeout(resolve, 1000));
res = await fetch(`http://${ipAddress}`, {'mode': 'no-cors'});
}
if(res.status === 200) {
setSpinner(false);
window.open(`http://${ipAddress}`);
}
Есть ли какой-нибудь способ решить эту проблему?
Редактировать:
Когда я консольно регистрирую переменную res в цикле while:
body: null
bodyUsed: false
headers: Headers
__proto__: Headers
ok: false
redirected: false
status: 0
statusText: ""
type: "opaque"
url: ""
Комментарии:
1. вы проверили, что получаете только статус
0
и200
2. @Dalvik Я получаю только статус 0