Как я могу получить доступ к объекту Spring в Ajax? - PullRequest
0 голосов
/ 10 сентября 2018

Я пытаюсь получить доступ к определенной конечной точке через Ajax get. В успехе я хочу обработать некоторую логику условно, используя «statusCode», который был установлен в модели.
ниже мой код,
Код контроллера:

 @RequestMapping("/person")
    public String loginError(Model model) {
        String code = "active"
        model.addAttribute("statusCode", code)
        return "person";
    }

JS код:

 $.ajax(url, {
         success: function(data, textStatus, xhr) {
                 //I want to access the statusCode here 
             },
         error: function() {
            console.log("Error");
         }
      });

В абзаце данных я получаю html человека, которого вернули. Но я хочу знать, как я могу получить доступ к statusCode внутри блока успеха?
Спасибо.

1 Ответ

0 голосов
/ 10 сентября 2018

Поскольку вы используете вызов AJAX и вам необходимо обработать ответ кода состояния, вы должны сказать, что в вашем контроллере ответ является типом AJAX, а не ModelAndView. Используйте эту аннотацию ResponseBody

@RequestMapping("/person")
@ResponseBody
public String loginError(Model model) {
    String code = "active"
    //Here add your logic and returs the String or Object to handle in the JS code
    return code;
}

Лично я бы использовал более полный ответ Бина, что-то вроде:

class JsonResponse implements Serializable {
    @Getter @Setter
    private int code;

    @Getter @Setter
    private String message;

    @Getter @Setter
    private int action;

    //Any other attributes useful for your logic 

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