Skip to content
Snippets Groups Projects
Commit 76005c44 authored by Kegan Dougal's avatar Kegan Dougal
Browse files

Added an access token interceptor to check unknown tokens.

parent 5a5f37ca
Branches
Tags
No related merge requests found
......@@ -23,8 +23,8 @@ var matrixWebClient = angular.module('matrixWebClient', [
'matrixService'
]);
matrixWebClient.config(['$routeProvider',
function($routeProvider) {
matrixWebClient.config(['$routeProvider', '$provide', '$httpProvider',
function($routeProvider, $provide, $httpProvider) {
$routeProvider.
when('/login', {
templateUrl: 'login/login.html',
......@@ -41,6 +41,22 @@ matrixWebClient.config(['$routeProvider',
otherwise({
redirectTo: '/rooms'
});
$provide.factory('AccessTokenInterceptor', function ($q) {
return {
responseError: function(rejection) {
console.log("Rejection: " + JSON.stringify(rejection));
if (rejection.status === 403 && "data" in rejection &&
"errcode" in rejection.data &&
rejection.data.errcode === "M_UNKNOWN_TOKEN") {
console.log("TODO: Got a 403 with an unknown token. Logging out.")
// TODO logout
}
return $q.reject(rejection);
}
};
});
$httpProvider.interceptors.push('AccessTokenInterceptor');
}]);
matrixWebClient.run(['$location', 'matrixService' , function($location, matrixService) {
......@@ -75,4 +91,4 @@ matrixWebClient
return function(text) {
return $sce.trustAsHtml(text);
};
}]);
\ No newline at end of file
}]);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment