проблема найти способ правильно настроить интерфейсное приложение в Angular 9, использующем обратный веб-сервис REST. На удаленном сервере с IP-адресом stati c я запускаю свой angular dev-сервер (я знаю, что это только для целей разработки, но сначала хочу избавиться от этой ошибки)
ng serve --host 0.0.0.0 --port 80
, чтобы я мог получить к нему доступ извне. то у меня есть приложение django также с сервером разработки по адресу
127.0.0.1:8000
В файле angular service.ts я пытаюсь ввести заголовок
export class FlightService {
httpOptions = {
headers: new HttpHeaders({
'Access-Control-Request-Method':'GET',
'Access-Control-Request-Headers':'origin, x-requested-with, accept'
})
};
private endpoint = 'http://127.0.0.1:8000/services';
constructor(private http: HttpClient) { }
//GET All Services
getAllServices(): Observable<any>{
return this.http.get(this.endpoint, this.httpOptions)
}
}
В settings.py моего django бэкэнда я поместил вверху модуль corsheaders:
'corsheaders.middleware.CorsMiddleware',
'django.middleware.common.CommonMiddleware',
...
и разрешил всему хосту (после многих попыток с белым списком, который ни один из них не работал :
CORS_ALLOW_CREDENTIALS = False
CORS_ALLOW_METHODS = [
# 'DELETE',
'GET',
'OPTIONS'
#'PATCH',
#'POST',
#'PUT',
]
CORS_ALLOW_HEADERS = [
'accept',
'accept-encoding',
'authorization',
'content-type',
'dnt',
'origin',
'user-agent',
'x-csrftoken',
'x-requested-with',
'x-forwarded-for'
]
Но у меня все время не получается. После добавления httpOptions я получаю сообщение об ошибке в браузере:
http. js: 2403 Отказано в установке небезопасных заголовок «Access-Control-Request-Method»
, а также:
Отказано в установке небезопасного заголовка «Access-Control-Request-Headers»
Так что, по крайней мере, я знаю, что Angular пытается его добавить.
Пожалуйста, помогите, как подойти к этому? Я думаю, проблема на стороне клиента. Я также пытался настроить Nginx с прокси к Angular dev, но также не может добавить заголовки в конфигурации Nginx.