Hi, I'm looking for a way to works with CAS auth too.
Thanks Le jeudi 23 octobre 2014 16:02:11 UTC+2, Linnet States a écrit : > > John, > > Did you ever resolve this issue? I'm doing something similar and I'm > afraid I don't know where to start. Any help you can provide is appreciated. > > Thanks, > > Linnet > > On Wednesday, December 12, 2012 4:20:01 AM UTC-5, John Meiss wrote: >> >> No advice or help to give me? >> >> >> >> On Tuesday, December 11, 2012 6:10:54 PM UTC+1, John Meiss wrote: >>> >>> Hi guys, >>> >>> The application is on an Apache server (front-end) and the back-end with >>> the WebServices are on a JBoss server. >>> They both should be behind a CAS. >>> >>> I'm thinking about several solutions: >>> >>> 1. Apache mod_cas >>> 2. Add a PHP page with a cas library >>> 3. Full AngularJS solution >>> >>> I'm more interested about the last solution because: >>> >>> - It's more Angular way >>> - Need to improve my Angular skill ;) >>> - Try to avoid to add one more technology (PHP) >>> >>> To do that, I've read some articles about authentication with AngularJS >>> but really few of them use CAS. >>> Most of the following code comes from this AMAZING article >>> http://www.espeo.pl/2012/02/26/authentication-in-angularjs-application >>> (thank you very much Witold!) >>> >>> So actually I've that: >>> myPortal.config(function($httpProvider) { >>> function httpInterceptor($q, $log) { >>> function success(response) { >>> return response; >>> } >>> >>> function error(response) { >>> var status = response.status; >>> >>> if (status == 401) { >>> $log.error('Response status: ' + status); >>> window.location = 'http://my-cas-server.com'; >>> return status; >>> } >>> >>> return $q.reject(response); >>> } >>> >>> return function(promise) { >>> return promise.then(success, error); >>> } >>> } >>> $httpProvider.responseInterceptors.push(httpInterceptor); >>> }); >>> >>> >>> When I run this code, it works, I'm redirected to the CAS sign in page >>> but my application has already started to be rendered >>> so users can see a part of an empty application which is not acceptable >>> ;) >>> >>> *Questions:* >>> >>> - First of all, it's the first time that I implement a CAS >>> authentication, so do you think that I'm on the good way? >>> - Would you to this like that or not at all? >>> - If I'm on the good way, how can I avoid the cloaking? >>> - I've read several articles and posts like the Misko's post on >>> stackoverflow: >>> >>> http://stackoverflow.com/questions/11972026/delaying-angularjs-route-change-until-model-loaded-to-prevent-flicker/11972028#11972028 >>> >>> but I can't get its solution working with this kind of controller: >>> >>> >>> myPortal.controller('PanelCtrl', function($scope, $rootScope, >>> $routeParams, Panel) { >>> $rootScope.$watch('locale', function() { >>> $scope.panels = Panel.query(function(panels) { >>> $scope.selected = $routeParams.panelId || panels[0].id; >>> $rootScope.currentPanel = Panel.get({panelId: $scope.selected}); >>> }); >>> }); >>> >>> $scope.select = function(id) { >>> $scope.selected = id; >>> }; >>> }); >>> >>> Thank you for all kind of help! >>> >> -- You received this message because you are subscribed to the Google Groups "AngularJS" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/angular. For more options, visit https://groups.google.com/d/optout.
