Ter*_*hus 7 authentication laravel angularjs
我试图创建一个名为theUser的全局变量,如果登录则包含userinfo.
我试过把它放在我的SPA php文件中:
app.value('theUser', '<?php echo Auth::user(); ?>');
Run Code Online (Sandbox Code Playgroud)
它只能在刷新页面后才能工作.(登录通过angularjs逻辑+ $ http请求到auth/login,如果登录则返回userinfo)
在我的角度认证应用程序中,我做到了这一点:
var login = $http.post("auth/login", sanitizeCredentials(credentials)).success(function(data) {
theUser = data;
$rootScope.theUser = theUser;
});
Run Code Online (Sandbox Code Playgroud)
这样可行,但仅在用户登录时才有效.如果我刷新,则用户为空.我不能让这两个解决方案一起工作.我可能需要另一种方法.
我想要的只是一个用户变量,我可以从我的应用程序中的任何位置访问,如果用户登录,或者之前已登录,则设置.使用Laravel 5.1.
这是我的auth app服务js:http://pastebin.com/HcdLaZcD
任何人都可以解雇我吗?谢谢.
要从文件访问登录用户JavaScript,您可以尝试类似的操作(创建视图编辑器,也layouts.master指示layouts/master.blade.php):
View::composer('layouts.master', function($view) {
$user = null;
if(Auth::check()) {
$user = Auth::user();
}
$view->with('authUser', $user);
});
Run Code Online (Sandbox Code Playgroud)
在主布局中尝试这个(因此如果用户登录,User变量将可用作对象):JS
<head>
<script>var User = {{ $authUser or 'undefined' }}</script>
</head>
Run Code Online (Sandbox Code Playgroud)
这只是一个想法,根据你的需要实现。此外,您还可以使用像App.user. 我写了一篇关于今年的文章,你可以
在这里查看。顺便说一句,这是为了Laravel 4.x。
。
| 归档时间: |
|
| 查看次数: |
1069 次 |
| 最近记录: |