Здравствуйте!
Обнаружил, что команда AngularUI реализовала плагин для загрузки файлов -
ui.upload. Плагин, определённо, хороший, но в теле использует вместо $http обычный XMLHttpRequest. Это не так уж плохо, но возникли проблемы с Django REST Framework, т.к. в указанном случае установка CSTFToken на этапе старта приложения не имеет никакого эффекта:
Application.run(['$http', '$cookies', function($http, $cookies) {
var token = $cookies.csrftoken;
$http.defaults.headers.common['X-CSRFToken'] = token;
$http.defaults.headers.post['X-CSRFToken'] = token;
}]);
Django REST Framework ожидает в заголовке параметр
X-SCRFToken, не находит его и выдаёт ошибку. Я создал
Issue на GitHub, но время реализации неизвестно.
Провайдера у данного модуля тоже нет, а изменение свойства
options не имеет никакого эффекта.
В результате у меня появилась идея - "А почему бы не переопределить стандартный конструктор XMLHttpRequest таким образом, чтобы там уже были установлены нужные заголовки?"
Я знаю, что расширять встроенные классы - ОЧЕНЬ плохая идея.
Я знаю, что лучше дождаться обновления плагина.
Вопрос носит чисто теоретический характер, вряд ли я буду использовать решение в реальной работе.