Невозможно получить данные из файла Gitlab - возникает исключение Cors - PullRequest
0 голосов
/ 07 февраля 2020

Мое требование - извлечение данных из файла gitlab через приложение Angular. У нас нет никакого сервиса для предоставления данных. Я должен получить данные непосредственно из файла gitlab. Поэтому я написал ниже код.

private _jsonURL = 'gitlabpath/appdata.json';
constructor(private _Activatedroute: ActivatedRoute, private http: HttpClient, private rd: Renderer2) {
this.getJSON().subscribe(data => {
  this.objJs = data;
});}
public getJSON(): Observable<any> {
const headers = new HttpHeaders({})
return this.http.get(this._jsonURL, {headers});}

Но я получаю следующую ошибку

*

заблокирован политикой CORS: Ответ на предпечатный запрос не Не проходите проверку контроля доступа: на запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin».

*

Пожалуйста, помогите мне решить эту проблему.

Я не видел ни одного примера доступа к файлу gitlab из angular кода anywhare.

1 Ответ

0 голосов
/ 07 февраля 2020

Похоже, что Gitlab заблокирован CORS, за исключением своих собственных доменов. Вы, вероятно, вызываете его с локального хоста или другого URL, который они не поддерживают. Вы можете попробовать создать бэкэнд-систему, которая будет действовать как прокси для извлечения данных, или вы можете использовать существующую, такую ​​как 'cors -where'

Например: https://cors-anywhere.herokuapp.com/https: //your-lab-url-here.com

Есть аналогичный вопрос о StackOverflow с лучшим объяснением, вы можете найти его здесь .

В качестве альтернативы вы можете попробовать использовать конечную точку API Gitlab, чтобы узнать, можете ли вы получить данные таким способом, см .: https://docs.gitlab.com/ee/api/

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