405 метод не разрешен Ошибка в AJAX POST - PullRequest
0 голосов
/ 14 января 2020

Я пытаюсь сохранить некоторые пользовательские входные данные через Ajax POST, но у меня продолжает появляться эта ошибка

405. Метод не разрешен.

var formData = {
  category: $("#category").val(),
  assetType: $("#assetType").val(),
  description: $("#description").val(),
}
console.log(formData);

$.ajax({
  dataType: 'json',
  url: '/add-asset',
  data: formData,
  type: "POST",
  enctype: 'multipart/form-data',
  processData: false,
  contentType: false,
  success: function(data) {
    if (data.status == 1) {
      openAlertDialog("Success", data.message, "Continue");
    } else {
      openAlertDialog("Error", data.message, "Continue", "");
    }
  },
  error: function(data) {
    openAlertDialog("Error", data.message, "Continue", "");
  },
});

Контроллер Код:

@RequestMapping(value="/add-asset", method = RequestMethod.POST)
public @ResponseBody String addAsset(@ModelAttribute AssetCategory as, Principal principal) {
    as.setAssetID(UUID.randomUUID().toString());
    as.setCreatedBy(principal.getName());

    JsonObject result = new JsonObject();

        assetService.save(as);
        result.addProperty("result", "Success");
        result.addProperty("status", 1);
        result.addProperty("message", "Changes Saved.");

    return result.toString();
}

Я могу получить пользовательский ввод, но не могу передать его на мой контроллер.

Внутренний источник в Chrome

enter image description here

1 Ответ

0 голосов
/ 19 января 2020

Я исправил это, поместив этот код в мою форму

<input type="hidden" name="_csrf" th:value="${_csrf.token}" />

кажется, что он ищет токен, поэтому я поместил скрытый ввод в мою форму.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...