gpt4 book ai didi

javascript - 验证服务对象在 angularjs 中刷新时丢失页面

转载 作者:行者123 更新时间:2023-12-03 10:05:48 25 4
gpt4 key购买 nike

我正在使用mean.js样板,它内置了身份验证。但是,我在使用样板身份验证服务时遇到问题。

这是服务:

'use strict';

// Authentication service for user variables
angular.module('users').factory('Authentication', [


function() {
var _this = this;
var _user_exists = {};

_this._data = {
user: window.user
};
return _this;
}
]);

现在,当我登录时,在身份验证 Controller 中,我有以下代码片段:

$http.post('/auth/signin', $scope.credentials).success(function(response) {
// If successful we assign the response to the global user model
$scope.authentication.user = response;

这很棒 - 因为 $scope.authentication 中现在有一个包含用户数据的用户对象。然后自定义具有自定义导航栏的标题 View (使用来自 $scope.authentication.user 的用户数据)。

但是,我使用的是 HTML5,每次刷新页面时,用户对象似乎都被覆盖并变为空 - 这似乎认为用户已注销(在导航栏上)。

但是,如果我执行'console.log($scope.authentication._data.user);',我仍然可以看到所有用户数据

如有任何想法,我们将不胜感激

最佳答案

为了详细说明,我的评论是,您需要在浏览器中保留持久的日期。

这可以通过 localStorage 或 Cookie 轻松执行。 (ngCookies 或 ngStorage)

当用户通过身份验证时,将数据存储到适当的持久存储中。

当用户启动您的应用程序 (.run()) 或在 Controller 开始时,如果用户已通过身份验证,请检查您的持久存储以检索用户信息。

关于javascript - 验证服务对象在 angularjs 中刷新时丢失页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30359102/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com