У меня проблема с моим загрузочным приложением с токеном csrf.Spring Security CSRF Token не работает с AJAX
У меня есть форма, где я могу редактировать Личность. Лицо может иметь
Теперь представим себе, что у человека есть автомобиль и введите его и сохраните. В следующий раз он захочет удалить этот автомобиль и ввести еще один. Я создал это так, что есть список всех его автомобилей - у него есть возможность удалить это из списка. Теперь я начинаю с этих таблеток и хочу отправить с соответствующим ID на сервер POST. Когда я пытаюсь, я получаю запрет на 403, и я понятия не имею, почему.
Если я перехожу от POST к GET, тогда он работает.
My JavaScript (взято с этого сайта: http://docs.spring.io/autorepo/docs/spring-security/4.0.0.CI-SNAPSHOT/reference/htmlsingle/#the-csrfmetatags-tag)
var csrfParameter = $("meta[name='_csrf_parameter']").attr("content");
var csrfHeader = $("meta[name='_csrf_header']").attr("content");
var csrfToken = $("meta[name='_csrf']").attr("content");
// using JQuery to send a non-x-www-form-urlencoded request
var headers = {};
headers[csrfHeader] = csrfToken;
$.ajax({
url: "./delete/car",
type: "GET",
headers: headers,
});
$.ajax({
url: "./delete/car",
type: "POST",
headers: headers,
});
Мои методы контроллера:
@RequestMapping(value = "/{login}/delete/car", method = RequestMethod.GET)
public ModelAndView delete(@PathVariable("login") final String login) {
System.out.println("Stop");
return new ModelAndView("redirect:" + WebSecurityConfig.URL_PERSONS_OVERVIEW);
}
@RequestMapping(value = "/{login}/delete/car", method = RequestMethod.POST)
public ModelAndView deleteInstEmp(@PathVariable("login") final String login) {
System.out.println("Stop");
return new ModelAndView("redirect:" + WebSecurityConfig.URL_PERSONS_OVERVIEW);
}
Любые предложения?
Заранее спасибо.
' "/ {} Логин/удаление/автомобиль", метод = RequestMethod.GET' это слушать GET запросы не POST –
извините, копировать пасты ошибка с моего сайта. в моей идее правильно –