Javascript 使用angularjs和php登录

Javascript 使用angularjs和php登录,javascript,php,angularjs,Javascript,Php,Angularjs,我将尝试用angularjs和php构建一个登录系统。但是,我不知道当用户成功登录后,我将如何处理会话和重定向 我是否应该在后端用PHP启动一个会话,然后将其返回到angular?我是否应该在重定向用户时使用window.location.href?您可以使用Php会话并将其返回到Angular service。然后,您可以将您的用户信息与服务共享给其他控制器 我建议您使用包含用户信息的ngRoute和共享服务。这种方法是非常快速和安全的 我只是编辑了我的答案,并为你做了一个简单的例子 var

我将尝试用angularjs和php构建一个登录系统。但是,我不知道当用户成功登录后,我将如何处理会话和重定向


我是否应该在后端用PHP启动一个会话,然后将其返回到angular?我是否应该在重定向用户时使用window.location.href?

您可以使用Php会话并将其返回到Angular service。然后,您可以将您的用户信息与服务共享给其他控制器

我建议您使用包含用户信息的ngRoute和共享服务。这种方法是非常快速和安全的

我只是编辑了我的答案,并为你做了一个简单的例子

var doc = angular.module('doc',
[
    'ngRoute'
]);

doc.service('link', function () {//Creating my service
    this.user = false;//Here is my user object. I am changing these datas in the login section.

});

doc.config(function($routeProvider, $locationProvider) {
    $routeProvider
     .when('/homepage', {
         templateUrl: 'view/homepage.html',
         controller: 'homePage',
     })
    .when('/login', {
        templateUrl: 'view/login.html',
        controller: 'login',
    })
    $locationProvider.html5Mode(true);
});

doc.controller("login", function ($scope, $timeout, link, $location) { //As you see I sent 'link' as a parameter. So I can easily use my service and the user data.
    $scope.username = "";
    $scope.password = "";
    $scope.login = function () {
        $.get("/login.php", {username:$scope.username,password:$scope.password},function(data){
            if(data){
                link.user = JSON.parse(data); // I am parsing my json data and save to link.user
                $location.path("/homapage");
            }
        });
    }
});


doc.controller("homePage", function ($scope, $timeout, link, $location) { //As you see I sent 'link' as a parameter. So I can easily use my service and the user data.
    if(link.user){
        console.log(link.user); // I can access my user!
    }else{
        $location.path("/login");
    }
});
正如您所看到的,我的服务包含我在登录页面初始化的用户数据。现在我很容易在控制器中使用它们