Я не понимаю, почему, но я продолжаю получать ошибку CORS, когда отправляю запрос на внешний API, независимо от того, что я делаю. Как это исправить?
import { Injectable } from '@angular/core';
import { HttpClient, HttpRequest, HttpHeaders } from '@angular/common/http';
import { Observable } from 'rxjs';
@Injectable({
providedIn: 'root'
})
export class YtsService {
url = 'https://yts.tl/api/v2/list_movies.jsonp';
headers;
constructor(
private http: HttpClient,
) {
this.headers = {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'GET',
'Access-Control-Allow-Headers': 'Content-Type, Authorization',
};
}
getMovies(): Observable<any> {
return this.http.get(this.url, { headers: this.headers });
}
}
API даже не требует аутентификации.
Это ошибка, которую я получаю в своей консоли:
Доступ в XMLHttpRequest по адресу 'https://yts.tl/api/v2/list_movies.jsonp' от источника 'http://localhost: 4200 ' заблокирован политикой CORS: Ответ на предпечатный запрос не проходит проверку контроля доступа: Нет ' Заголовок Access-Control-Allow-Origin 'присутствует в запрошенном ресурсе.
Блокировка перекрестного чтения (CORB) заблокировала ответ перекрестного источника https://yts.tl/api/v2/list_movies.jsonp с текстом MIME-типа / html. Подробнее см. https://www.chromestatus.com/feature/5629709824032768.