Пользовательский метод загрузки dropzone и angularjs

0

Я пишу приложение (Java + Spring Boot с защитой на бэкэнд), Angularjs спереди. Мне нужно отправить файл на бэкэнд с помощью токена share (цель безопасности). У меня есть csrf включен на бэкэнде и перехватчике в угловом, чтобы использовать его, когда я создаю HTTP-запрос. Но это не работает с ng-dropzone.

Я добавил конфигурацию dropzone:

$scope.logoDropzoneConfig = {
                parallelUploads: 1,
                maxFileSize: 30,
                url: '/api/companies/upload/logo',
            };

Но у меня есть type=org.springframework.security.access.AccessDeniedException, message=Access is denied.

Можно написать собственный метод отправки файлов вместо url в config?

  • 0
    Можно ли отключить csrf только для / api / companies / upload / logo с spring-security при загрузке с помощью dropzone? http.csrf().ignoringAntMatchers("/api/companies/upload/logo")
  • 0
    @MGR MGR мое приложение должно быть безопасным. Я не хочу отключать csrf для любого сервиса. Это не решение.
Показать ещё 2 комментария
Теги:
spring-security
spring
dropzone.js

1 ответ

1
Лучший ответ

Я разрешаю эту проблему этой ночью. В конфигурации dropzone я могу передать заголовки, поэтому я передаю токен авторизации, как показано ниже:

$scope.logoDropzoneConfig = {
                parallelUploads: 1,
                maxFileSize: 30,
                url: '/api/companies/upload/logo',
                headers: {
                    'Authorization' :AuthServerProvider.getToken()
                }
            };

Простой, не так ли? :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню