@NooBick

Ошибка после fetch?

fetch("https://vk.com/foaf.php?id=1", {mode: 'no-cors'})
        .then(res => res.text())
        .then(str => new DOMParser().parseFromString(str, "text/xml"))
        .then(data => console.log(data))


В ответе:

<html xmlns="http://www.w3.org/1999/xhtml"><parsererror style="display: block; white-space: pre; border: 2px solid #c77; padding: 0 1em 0 1em; margin: 1em; background-color: #fdd; color: black"><h3>This page contains the following errors:</h3><div style="font-family:monospace;font-size:12px">error on line 1 at column 1: Extra content at the end of the document
</div><h3>Below is a rendering of the page up to the first error.</h3></parsererror><body></body></html>


Если использовать метод cors, то вообще выдаст ошибку.
  • Вопрос задан
  • 48 просмотров
Пригласить эксперта
Ответы на вопрос 1
Aetae
@Aetae
Тлен
fetch не умеет в кодировку отличную от utf-8, а там windows-1251.
Либо юзай классический xmlhttp, которой заодно и сразу xml тебе разберёт, или добавь в цепочку работу ещё и с ArrayBuffer и TextDecoder.

Ну и само собой у тебя должны быть права такой запрос делать. С рандомного сайта ты не можешь получить данные с vk.com если тебе этого не разрешат. 'no-cors' тут значит только то, что запрос дойдёт туда, ответа же тебе никто не даст.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы