로그인 시스템을 만들려고했지만 PHP 코드에서 세션을 가져오고 싶습니다. 세션 로그인이 false
또는 null
인 경우 로그인 페이지로 리디렉션됩니다. 여기 내 실행 AngularJS와 코드 :PHP에서 리다이렉트를 위해 AngularJS로 세션을 가져 오는 방법
app.run(["$rootScope", 'adminService', '$location', function($rootScope, adminService, $location) {
$rootScope.$on("$routeChangeStart", function() {
$location.path('/login');
});
}]);
라우팅 코드 :
app.config(function($routeProvider){
$routeProvider.when('/', {
templateUrl: 'welcome.html'
}).when('/administrator', {
templateUrl: './part/administrator.html',
controller: 'adminPageControl'
}).when('/administrator/:id_admin', {
templateUrl: './part/addit-administrator.html',
}).when('/alternatif', {
templateUrl: './part/alternatif.html',
controller: 'alternatifPageControl'
}).when('/alternatif/:id_alternatif', {
templateUrl: './part/addit-alternatif.html'
}).when('/skala', {
templateUrl: './part/skala.html',
controller: 'skalaPageControl'
}).when('/skala/:id_skala', {
templateUrl: './part/addit-skala.html'
}).when('/kriteria', {
templateUrl: './part/kriteria.html',
controller: 'kriteriaPageControl'
}).when('/kriteria/:id_kriteria', {
templateUrl: './part/addit-kriteria.html'
}).when('/klasifikasi', {
templateUrl: './part/klasifikasi.html',
controller: 'klasifikasiPageControl'
}).when('/klasifikasi/:id_klasifikasi', {
templateUrl: './part/addit-klasifikasi.html'
}).when('/analisis', {
templateUrl: './part/topsis.php',
controller: 'analisisPageControl'
}).when('/login', {
templateUrl: './login.html'
}).when('/logout', {
template: 'logout'
}).otherwise({
redirectTo: '/'
});
});
PHP 함수 세션 코드 :
function logincheck(){
return $_SESSION['authid'];
}
logincheck();
당신은 당신의 클라이언트에 직접 PHP-세션 상태를 분석하지 않고 백엔드의 고유 한 세션 토큰을 생성해야합니다 당신은 같은
/api/logincheck
PHP 라우터를 만들 수 있습니다 . AngularJS는 SPA 용으로 제작되었습니다. 따라서 클라이언트가 API를 사용하여 백엔드와 통신하게하십시오. 예를 들어 RESTful API. 사용자가 클라이언트를 통해 로그인하면 고유 한 세션 토큰을 클라이언트에 반환합니다. 보안 데이터 HTTP 요청에이 토큰을 넣고 유효성을 검사하십시오. oAuth 처리를 살펴보십시오. – lin
토큰을 만드는 방법은 무엇입니까? –
예를 들어'$ token = md5 ('what-ever-you-want'); ' – lin