토큰이 만료 된 후 로그인 페이지로 성공적으로 리디렉션되지만 임은 수행 할 수없는 토큰 만료를 처리하기위한 인터셉터를 생성 한 응용 프로그램이 있습니다. 로그인 페이지로 리디렉션 한 후 오류를 표시하십시오.angularjs HTTP 인터셉터가로드 된 위치 경로에 오류를 표시합니다.
제 질문은 인터셉터가 앱을 해당 페이지로 리디렉션 한 후 로그인 페이지에 토큰 만료 오류가 표시되는 것을 어떻게 할 수 있습니까?
Heres는 내 리디렉터 : 마지막으로
app
.config(['$httpProvider', function($httpProvider) {
$httpProvider.interceptors.push(function($q, $location, LoopBackAuth) {
return {
responseError: function(rejection) {
if (rejection.status == 401) {
//Now clearing the loopback values from client browser for safe logout...
LoopBackAuth.clearUser();
LoopBackAuth.clearStorage();
$location.path("/login");
}
return $q.reject(rejection);
}
};
})
}])
.config(function(LoopBackResourceProvider) {
LoopBackResourceProvider.setAuthHeader('X-Access-Token');
})
'/ login' 경로가 기본 응용 프로그램의 일부입니까? 동일한 index.html을 공유합니까? 그렇다면'$ stateParams.error = 'Token expired ''를 사용하여 다른 페이지로 전환 한 다음 로그인 폼 위에 팝업으로 표시 할 수 있습니다. 또한 url 매개 변수 인'/ login? error = TokenExpired'를 오류로 만들 수 있습니다. – forrestmid
@forrestmid 내 다른 문제가 내 angularjs 지식 부족 ... URL 매개 변수로 오류를 보내려고 및 로그인 컨트롤러 범위를 설정하지만 location.path 할 때 해당 오류를 템플릿에 반영 할 수 없습니다. 'login'). search (params). login? error = xxxx 페이지를 다시로드 할 때만 location.path가 해당 페이지에 대한 get 요청을 작성하지 않은 것처럼 처리합니다. – maumercado
또한 $ stateParams를 전환하고 추가하는 방법을 알지 못하지만 시도했지만 정의되지 않은 전환 방법을 발견하지 못했습니다 ... 범위가 인터셉터의 var가 아니므로 다시 여기에 anglejs 지식이 부족한 것이 유일한 것일 수 있습니다 이유 – maumercado