0
は、私は次のようミドルウェアでいくつかのデータを格納します。Laravel、独自のリクエストクラスで失われたデータ
public function handle($request, Closure $next)
{
//checking above..
if($this->authed()){
$request->token= $token; //here store the token in user request
return $next($request);
}
return response('Invalid credentials', 401);
}
は、コントローラに私が最初のddはヌルを与える
//function in controller
public function upload(CoverageValueRequest $request){ //calling a custom request
dd($request->token);
dd($request->all());
}
カスタムリクエストクラスを呼び出します。しかし、
CoverageValueRequest
を
Request
に変更した場合、トークンが印刷されます。
P.S:Content-Type:application/jsonを使用してREST呼び出しからJSON形式の$ requestデータを受け取ります。これが適切かどうかはわかりません。
更新
私はミドルウェアまだ同じ動作に次のように変更されました:CoverageValueRequest
場合
$request->merge(['token' => $token]);
は、トークンを取得することはできませんが、それはRequest
であれば、それは動作します。私がなぜわからない
//function in controller
public function upload(CoverageValueRequest $request){ //calling a custom request
dd($request->attributes->get('token'));
dd($request->all());
}
:次のように
public function handle($request, Closure $next)
{
//checking above..
if($this->authed()){
$request->attributes->add(['token' => $token]);
return $next($request);
}
return response('Invalid credentials', 401);
}
その後、
コントローラでそれを取得: