Запрос на удаление ajax jquery не работает

Я пытаюсь выполнить запрос DELETE с помощью Ajax, но он не работает, я получаю внутреннюю ошибку, но не вижу проблемы, вы можете мне помочь?

это частичный код JavaScript:

$.ajax({
    url: 'http://localhost:8080/actors/remover',
    type: 'DELETE',
    data: JSON.stringify(movie),
    traditional:true,
    dataType: 'json',
    success: function(result) {...},
    error: function(result){...}
});

а вот код моего контроллера:

@RequestMapping(value = "/actors/remover", method = RequestMethod.DELETE)//TODO, elimina un attore dal db
public boolean remove(@PathVariable("movie") int movie) {
    System.out.println("Attori da cancellare");
    serv.deleteActors(movie);
    return true;
}//remove

1 ответ

Решение

Проблемы, которые я вижу в вашем коде:

  1. dataType:'json' используется, если вы получили свой ответ как объект json.
  2. На бэкэнде вы не производите json на всех но есть boolean,
  3. Вы должны использовать contentType:'application/json',
  4. И нет необходимости использовать traditional:true,

Поэтому я предлагаю вам использовать это:

$.ajax({
    url: 'http://localhost:8080/actors/remover',
    type: 'DELETE',
    data: {movie:movie}, //<-----this should have to be an object.
    contentType:'application/json',  // <---add this
    dataType: 'text',                // <---update this
    success: function(result) {...},
    error: function(result){...}
});
Другие вопросы по тегам