Метод GET не вызывается в IE - PullRequest
0 голосов
/ 17 октября 2018

Я новичок в AngularJs & Spring.Я вызываю метод Spring MVC GET из функции AngularJs.Иногда метод GET не вызывается и дает старые значения сеанса.Если я использую POST, он работает нормально.

Пожалуйста, прокомментируйте, если вам нужно больше информации об этом.

Spring MVC метод:

@RequestMapping(value="/getAccessDetails", method=RequestMethod.GET)
public @ResponseBody ProcessDO getAccessDetFromSession(HttpServletRequest request){
    AccessDO accessDO = null;
    HttpSession session=request.getSession();
    if(session.getAttribute("accessDetail")!=null) {
        accessDO =(AccessDO) session.getAttribute("accessDetail");
    }
    return accessDO ;
}

AngularJS Функция:

$scope.loadDetails = function(){
    $http.get(CONTEXT+'/getAccessDetails').then(function(resp){
        alert(resp.data); // Getting old value
    });
};

1 Ответ

0 голосов
/ 17 октября 2018

Цели операций кэширования

Я думаю, это объясняет вашу проблему.Это происходит потому, что ваш ответ кэшируется, и при повторной попытке вы получаете кэшированный ответ в случае GET.

Хотя метод post не кэшируется и не сохраняется в истории браузера.

Вы также можете сослаться http_methods_get_post_difference эта ссылка

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