Как обойти CORS

447
07 октября 2017, 22:26

Пытаюсь с помощью js забрать ленту RSS следующим способом:

'use strict'; 
var rss = 'https://habrahabr.ru/rss/feed/posts/eeb96d62f10f118dbc9ac3747022f16b/'; 
 
var result = document.querySelector('#result'); 
var myHeaders = new Headers(); 
myHeaders.append("Content-Type", "text/plain"); 
myHeaders.set('Access-Control-Allow-Origin', '*'); 
fetch(rss, { 
  method: 'GET', 
  mode: 'cors', 
  headers: myHeaders, 
  body: null, 
  cache: 'default' 
}).then(function(response) { 
  return response.text(); 
}).then(function(res) { 
  let parser = new DOMParser(); 
  let xmlDoc = parser.parseFromString(res, "text/xml"); 
  result.innerHTML = xmlDoc; 
  console.log(xmlDoc); 
}).catch((error) => { 
  result.innerHTML += error; 
  console.log 
});
<div id="result"></div>

Получаю ошибку:

Failed to load https://habrahabr.ru/rss/feed/posts/eeb96d62f10f118dbc9ac3747022f16b/: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://localhost.local' is therefore not allowed access. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

Если воспользоваться расширением для хрома, то данные приходят без ошибок. Пробовал добавить те же значения в запрос что и добавляет расширение, но это не прокатило. Почему расширение может обойти CORS? Что необходимо добавить в заголовок, что бы можно было получить данные?

READ ALSO
Использование слайсов в JS

Использование слайсов в JS

Есть ли возможность в JS использовать слайсы в таком кейсе:

238
localStorage.setItem не срабатывает для url

localStorage.setItem не срабатывает для url

Друзья, создаю возможность для пользователя установить фон с сохранением для следующих сессийПочему-то url не сохраняется (Опция "Морская...

294
Не работает функция YouTubeGetID(url) в Wordpress админ

Не работает функция YouTubeGetID(url) в Wordpress админ

Есть функция, которая выводит id видео youtubeФункция работает корректно, но не в Wordpress админке, при запуске сайта пишет ошибку в консоле:

334
Скачивание apk через мобильный Chrome

Скачивание apk через мобильный Chrome

Всем приветНужна помощь сообщества

271