Maison > Questions et réponses > le corps du texte
Comment puis-je empêcher les utilisateurs d'effectuer des opérations et d'accéder au-delà du niveau de la page ?
曾经蜡笔没有小新2017-05-15 16:52:50
Il existe trop de méthodes. Cela dépend de l'échelle de votre projet et de la conception du système. Si vous souhaitez limiter les autorisations d'interface (telles que OAuth2), vous pouvez envisager les éléments suivants :
app.factory('authInterceptor', function($q, $cookieStore, $location) {
return {
request: function(config) {
config.headers = config.headers || {};
if ($cookieStore.get('token')) {
config.headers.Authorization = 'Bearer ' + $cookieStore.get('token');
}
return config;
},
responseError: function(response) {
if (response.status === 401) {
$location.path('/login');
$cookieStore.remove('token');
}
return $q.reject(response);
}
};
});
$httpProvider.interceptors.push('authInterceptor');
S'il s'agit d'une autorisation de routage, modifiez légèrement le code ci-dessus et cela peut également être obtenu en jugeant la session.
Si vous utilisez ui-router
, vous pouvez envisager d'ajouter cette phrase à app.js :
$rootScope.$on('$stateChangeStart', function(event, next) {
return Auth.isLoggedInAsync(function(loggedIn) {
if (next.authenticate && !loggedIn) {
return $location.path("/login");
}
});
});
Vous pouvez vous référer à un autre article pour savoir comment implémenter la classe Auth spécifique :
http://blog.coding.net/blog/techniques-for-authentication-in-angular-j...