Невозможно получить данные из ajax с запросом

У меня проблемы с получением данных из сообщения ajax в простом приложении, просто выполняя несколько тестов.

Я работаю с чем-то легким:

У меня 2 класса:

Controller.java:

@RequestMapping(value = "/urlpost", method = {RequestMethod.GET, RequestMethod.POST} )
public urlPostTest(HttpServletRequest request, HttpServletResponse response) {
      request.setCharacterEncoding("UTF-8");

      String name  = request.getParameter("post_name");
      String age = request.getParameter("post_age");
      System.out.println("His name is: " + name);
      System.out.println("His age is: " + age);
}

А также

PostingClass.js

function posting(){
  $.ajax({
    url: 'urlpost',
    method: 'POST',
    data: {
        'post_name': "Peter",
        'post_age': "22"
    },
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function () {
        console.log("Send data: SUCCES.");
    }
});

}

Ajax правильно переходит к URL-адресу, но запрос всегда равен нулю.

В чем может быть проблема?.

Спасибо.

Зачем вам эта первая строчка HttpServletRequest request;? Вы пытались удалить его?

Abubakkar 31.10.2018 12:42

извините, моя вина, этой строки там быть не должно. отредактировал.

Zack 31.10.2018 12:48

какой фреймворк вы используете для создания веб-приложения?

Sim Dim 31.10.2018 13:18
0
3
47
1

Ответы 1

request.getParameter("post_name"); // works on application/x-www-form-urlencoded


Чтобы получить данные из запроса приложения / json, используйте что-то вроде этого:

String jsonStr = IOUtils.toString(request.getInputStream());
JSONObject jsonObj = new JSONObject(jsonStr);
String name = getString("name");

Другие вопросы по теме