Я использую Django Rest Framework в качестве серверной части для моего приложения Ioni c. Я настроил API с помощью JWT, и с почтальоном все работает нормально. Как только я пытаюсь выполнить вызов API из своего приложения Ioni c, я получаю следующие сообщения об ошибках:
Ошибка 1 Запрос на перекрестное происхождение заблокирован: та же политика происхождения не позволяет читать удаленный ресурс по адресу https://www.mywebsite.com/api/movies. (Причина: заголовок 'password' не разрешен в соответствии с заголовком 'Access-Control-Allow-Headers' из ответа предварительной проверки CORS).
Ошибка 2 Запрос на другой источник заблокирован: то же самое Политика происхождения запрещает чтение удаленного ресурса по адресу https://www.mywebsite.com/api/movies. (Причина: запрос CORS не выполнен).
Я запускаю приложение django на веб-сервере apache2.
django -cors-headers установлено,
добавлено в installed_apps
,
добавлены в промежуточное ПО и CORS_ORIGIN_ALLOW_ALL = Ture
В моем приложении Ioni c запрос выглядит следующим образом:
Service
fetchMovies() {
const httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json',
'Authorization': `Bearer ${this.authService.getToken()}`,
'username': 'USERNAME',
'password': 'PASSWORD'
})
}
return this.http.get(this.url, httpOptions).pipe(tap(resData => {
console.log(resData);
}));
}
Я получаю токен так:
getToken() {
return this.http.post('https://www.mywebsite.com/api-token', this.params);
}
И пользуюсь сервисом следующим образом:
ionViewWillEnter() {
this.moviesServcie.fetchMovies().subscribe();
}
Есть ли у кого-нибудь идеи, что я делаю не так? Если вам нужна дополнительная информация, не стесняйтесь писать комментарий! Заранее благодарим за любую помощь