Задать вопрос
Ingernirated
@Ingernirated
Романыч

Почему js не хочет подгрузить текст?

Почему не хочет подгружать текст и выдает ошибку?
mini.html:53 XMLHttpRequest cannot load file:///C:/Users/newText.txt. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.
Как с помощью JS правильно подгружать асинхронно файлы?

<div>
	<p class="p">
	Хотя Достоевский отрицал предъявленные ему обвинения, суд признал его «одним из важнейших преступников»[67][68] за чтение и «за недонесение о распространении преступного о религии и правительстве письма литератора Белинского»[69]. До 13 ноября 1849 года Военно-судная комиссия приговорила Ф. М. Достоевского к лишению всех прав состояния и «смертной казни расстрелянием»[70]. 19 ноября смертный приговор Достоевскому был отменён по заключению генерал-аудиториата «ввиду несоответствия его вине осужденного» с осуждением к восьмилетнему сроку каторги[71]. В конце ноября император Николай I при утверждении подготовленного генерал-аудиториатом приговора петрашевцам заменил восьмилетний срок каторги Достоевскому четырёхлетним с последующей военной службой рядовым[72].
	</p>
</div>

function loadText() {
	var xhttp;
	if (window.XMLHttpRequest) {
		xhttp = new XMLHttpRequest();
	} else {
		xhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	xhttp.onreadystatechange = function() {
		if (this.readyState == 4 && this.status == 200) {
			document.querySelector(".p").innerHTML = this.responseText;
		}
	}
	xhttp.open("GET", "newText.txt", true);
	xhttp.send();
}
  • Вопрос задан
  • 107 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
Sanasol
@Sanasol Куратор тега JavaScript
нельзя просто так взять и загуглить ошибку
Потому что: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.
Ответ написан
Комментировать
tema_sun
@tema_sun
Читайте про CORS.
Самое простое решение - на стороне бэкенда скачать нужный вам файл к себе на сервер, и уже со своего сервера отдать в javascript.
Ответ написан
Комментировать
pxz
@pxz
✔ Совет: Вам помогли? Отметьте ответы решением.
Часть уже объяснили.
Проще: нельзя открывать локальные файлы по AJAX, на самом деле вообще никак нельзя открывать, кроме FileReader.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
Wanted. Москва
от 250 000 до 400 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
26 дек. 2024, в 23:03
500 руб./в час
26 дек. 2024, в 21:50
5000 руб./за проект
26 дек. 2024, в 21:01
10000 руб./за проект