laravel在中间件内生成的变量如何传到控制器

发布于 2022-09-03 19:44:32 字数 37 浏览 12 评论 0

在中间件内获取到一个变量,如何返回到控制器中并使用这个变量!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

软的没边 2022-09-10 19:44:32

做了个demo:

// web.php
Route::get('/check', 'CheckController@check')->middleware(App\Http\Middleware\CheckRequest::class);

// Middleware/CheckRequest.php
class CheckRequest
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $check_request = 'CheckRequest';
        $request->attributes->add(compact('check_request'));
        return $next($request);
    }
}

// CheckController.php
//use Request;
use Illuminate\Http\Request;
class CheckController extends Controller
{
    public function check(Request $request)
    {
        return $request->get('check_request'); // 输出CheckRequest
    }
    
    public function check2()
    {
        return Request::get('check_request'); // 输出CheckRequest
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文