我已经创建了几个中间件,每个特定功能一个,并且我希望后续的中间件能够利用从先前的中间件创建的数据,而不是从头开始生成数据。有没有办法做到这一点?我不确定是否应该使用$request
或$next
。
答案 0 :(得分:2)
您可以使用Session::put('key',$value)
方法在会话中存储数据,然后使用Session::get('key')
从下一个中间件中获取数据,也可以在$request
对象中传递该数据,例如{{ 1}},然后可以使用$request->addCustomField = 'custom field value'
从下一个中间件中获取它。
希望对您有帮助
答案 1 :(得分:2)
使用merge函数将其添加到输入中:
return $next($request->merge(['my_data' => $data]));
例如,可以使用$request->input('my_data')
进行访问。
offsetUnset可用于删除下一个中间件中的数据。