Дубликат: как работать с CORS в электронном приложении - PullRequest
0 голосов
/ 24 сентября 2019

Этот вопрос задается здесь , но ни одно из решений не работает для меня.Я получаю следующую ошибку в приложении угловых электронов.

Ответ на предварительный запрос не проходит проверку контроля доступа: в запрашиваемом ресурсе отсутствует заголовок «Access-Control-Allow-Origin».Следовательно, Origin 'http://localhost:4200' не разрешен доступ.

Ниже приведен мой код:

const formData = new FormData(), xhr = new XMLHttpRequest();
xhr.onreadystatechange = () => {
   if (xhr.readyState === 4) {
      if (xhr.status === 200 || xhr.status === 201) {
         observer.next(JSON.parse(xhr.response));
         observer.complete();
      }
      else if (xhr.status === 404) {
         observer.error('404');
      }
      else {
         observer.error(xhr.response);
      }
    }
 };

 xhr.onerror = function () { throw new Error('Not found'); };
 xhr.upload.onerror = function () { throw new Error('Not found'); };
 const url = this.baseUrl + this.accessTokenParam;

 xhr.open('POST', url, true);

 xhr.send(formData);

Я также добавил следующие заголовки после xhr.open но ничего не изменилось:

xhr.setRequestHeader('Access-Control-Allow-Origin', '*');
xhr.setRequestHeader('Access-Control-Allow-Methods','GET,PUT,POST,DELETE');
xhr.setRequestHeader('Access-Control-Allow-Headers', 'Content-Type');

Я также пытался следовать этому руководству, но я получаю ошибку (имя не найдено) в XDomainRequest .

Отключение веб-безопасности в Chrome также не работает в этом случае.

open -a Google \ Chrome --args --disable-web-security --user-data-dir

Пожалуйста, помогите!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...