Я сейчас нахожусь в процессе создания расширения браузера для университетского проекта.Однако, когда я записывал расширение, я столкнулся с действительно странной проблемой.Чтобы полностью понять мою ситуацию, мне нужно будет описать ее в долгах от того, откуда возникла моя проблема.
Расширение, над которым я сейчас работаю, должно иметь функцию, которая проверяет, может ли браузер подключаться к Интернету или нет,Вот почему я решил создать очень простую функцию запроса AJAX и в зависимости от результата, возвращаемого этой функцией, определить, есть ли у пользователя подключение к Интернету.
Именно поэтому я создал эту очень простую функцию AJAX, котораяВы можете увидеть ниже этой линии.
$.ajax({
url: "https://enable-cors.org/index.html",
crossDomain: true,
}).done(function() {
console.log("The link is active");
}).fail(function() {
console.log("Please try again later.");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Пока я понимаю, что он делает, он работает нормально.Например, если вы запустите функцию как есть, она успешно подключится к URL-адресу и обработает «.done (function ...»), если вы измените URL-адрес на «index273.index» файл, который не существуетбудет обрабатывать с «.fail (функция ...». Я был доволен результатом, пока я не решил еще больше проверить его и отключил мой кабель от компьютера. Затем, когда я запустил расширение, он вернул последний результат, когдау браузера была связь с Интернетом. Мое объяснение, почему функция делает это, заключается в том, что она кэширует результат URL-адреса и, если не может подключиться, выдает последнее кэшированное значение. Мой следующий шаг, чтобы попытаться решить эту проблему - добавить кеш:false «после» свойства crossDomain: true, но после этого при запуске расширения выдается следующая ошибка:
Блокировка перекрестного запроса: та же политика происхождения запрещает чтение удаленного ресурса в https://enable -cors.org / index? _ = 1538599523573 . (Причина: заголовок CORS 'Access-Control-Allow-Origв 'отсутствует).
Если кто-то может помочь мне решить эту проблему, я был бы чрезвычайно благодарен.Я хотел бы заранее извиниться за мой английский, но это не мой родной язык.
PS: я пытаюсь реализовать эту функцию во всплывающем меню, а не в категории "content_scripts".В настоящее время я тестирую это под Firefox v62.0.3 (последняя доступная версия, когда я пишу этот пост).
С уважением, Джордж