<分区>
实际上,我正在尝试设置全局变量。我的场景是当我使用 laravel 5 框架登录时。我不想在任何 Controller 和 View 页面中使用身份验证电子邮件。我想使用由注册页面而不是身份验证电子邮件创建的 token 号。所以请为这种情况提供一些提示或想法。
<分区>
实际上,我正在尝试设置全局变量。我的场景是当我使用 laravel 5 框架登录时。我不想在任何 Controller 和 View 页面中使用身份验证电子邮件。我想使用由注册页面而不是身份验证电子邮件创建的 token 号。所以请为这种情况提供一些提示或想法。
最佳答案
如果您在 AppServiceProvider 启动方法中生成 token 后将生成的 token 存储在用户身上,则应该可以正常工作:
<?php
// app/Providers/AppServiceProvider.php
//...
class AppServiceProvider extends ServiceProvider
{
//...
public function boot()
{
view()->composer('*', function($view) {
if(auth()->user()) {
$user = auth()->user();
$token = $user->token;
view()->share("user_token", $token);
$this->app->singleton('user_token', function () {
return $token;
});
}
});
}
}
获取 View 中的数据:
{{ $user_token }}
在 Controller 中:
app('user_token');
关于laravel - 如何在 laravel 5 的所有 Controller 和 View 页面中使用 token 号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44498262/
相关文章:
laravel - 如何创建仅用于测试的 Laravel 路由(phpunit)?
php - Laravel 5.1 用户输入文本中的链接/可点击链接
拉拉维尔 : How to copy a mysql table structure with DB?
php - Laravel 5 在 AbstractProvider.php 中获取 InvalidStateException
php - 在 Laravel 5.1 中获取过滤和关联的记录
laravel - 如何在 Laravel Mix 中使用 FullCalendar