Ho un problema nella mia app di avvio di primavera con il token csrf.Spring Security CSRF Token non funziona con AJAX
Ho un modulo in cui posso modificare una persona. Una persona può avere
Immaginiamo ora che la persona abbia una macchina e inserisca questa e la memorizzi. La prossima volta che vorrà cancellare questa macchina e inserirne un'altra. L'ho creato in modo che ci sia una lista di tutte le sue macchine - ha la possibilità di rimuoverlo dalla lista. Ora sto iniziando da queste pillole e voglio inviare con l'ID corrispondente al server un POST. Quando cerco di ottenere un 403 proibito e non ho idea del perché.
Se cambio da POST a GET, funziona.
mio JavaScript (tratto da questo sito: 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,
});
I miei metodi di controller:
@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);
}
qualche suggerimento?
Grazie in anticipo.
' "/ {login}/cancellare/car", method = RequestMethod.GET' questo ascoltare richieste GET non post –
dispiace, copia incolla errore dal mio sito. nel mio ide è giusto –