मेरे पास एक AngularJS एप्लिकेशन है जो तुर्क, ग्रंट और बोवर का उपयोग करके बनाई गई है।
मेरे पास एक लॉगिन पृष्ठ है जिसमें एक नियंत्रक है जो प्रमाणीकरण के लिए जांच करता है। अगर क्रेडेंशियल सही हैं तो मैं होम पेज पर फिर से आता हूं।
app.js
'use strict';
//Define Routing for app
angular.module('myApp', []).config(['$routeProvider', '$locationProvider',
function($routeProvider,$locationProvider) {
$routeProvider
.when('/login', {
templateUrl: 'login.html',
controller: 'LoginController'
})
.when('/register', {
templateUrl: 'register.html',
controller: 'RegisterController'
})
.when('/forgotPassword', {
templateUrl: 'forgotpassword.html',
controller: 'forgotController'
})
.when('/home', {
templateUrl: 'views/home.html',
controller: 'homeController'
})
.otherwise({
redirectTo: '/login'
});
// $locationProvider.html5Mode(true); //Remove the '#' from URL.
}]);
angular.module('myApp').factory("page", function($rootScope){
var page={};
var user={};
page.setPage=function(title,bodyClass){
$rootScope.pageTitle = title;
$rootScope.bodylayout=bodyClass;
};
page.setUser=function(user){
$rootScope.user=user;
}
return page;
});
LoginControler.js
'use strict';
angular.module('myApp').controller('LoginController', function($scope, $location, $window,page) {
page.setPage("Login","login-layout");
$scope.user = {};
$scope.loginUser=function()
{
var username=$scope.user.name;
var password=$scope.user.password;
if(username=="admin" && password=="admin123")
{
page.setUser($scope.user);
$location.path( "/home" );
}
else
{
$scope.message="Error";
$scope.messagecolor="alert alert-danger";
}
}
});
होम पेज पर मेरे पास है
<span class="user-info">
<small>Welcome,</small>
{{user.name}}
</span>
<span class="logout"><a href="" ng-click="logoutUser()">Logout</a></span>
में loginController
, मैं लॉगिन जानकारी की जांच करता हूं और यदि यह सफल होता है, तो मैं उपयोगकर्ता ऑब्जेक्ट को सेवा कारखाने में सेट करता हूं। मुझे नहीं पता कि यह सही है या नहीं।
मुझे क्या चाहिए, जब उपयोगकर्ता लॉग इन होता है, तो वह उपयोगकर्ता ऑब्जेक्ट में कुछ मूल्य निर्धारित करता है ताकि अन्य सभी पृष्ठों को वह मान मिल सके।
जब भी कोई मार्ग परिवर्तन होता है, तो नियंत्रक को यह जांचना चाहिए कि उपयोगकर्ता लॉग इन है या नहीं। यदि नहीं, तो उसे लॉगिन पृष्ठ पर फिर से आना चाहिए। इसके अलावा, यदि उपयोगकर्ता पहले से लॉग इन है और पेज पर वापस आ जाता है, तो उसे होम पेज पर जाना चाहिए। नियंत्रक को सभी मार्गों पर क्रेडेंशियल्स की जांच करनी चाहिए।
मैंने एनजी-कुकीज़ के बारे में सुना है, लेकिन मुझे नहीं पता कि उनका उपयोग कैसे किया जाए।
मेरे द्वारा देखे गए कई उदाहरण बहुत स्पष्ट नहीं थे और वे किसी प्रकार की पहुंच भूमिकाओं या कुछ का उपयोग करते हैं। मैं ऐसा नहीं चाहता। मुझे केवल एक लॉगिन फ़िल्टर चाहिए। क्या कोई मुझे कुछ विचार दे सकता है?