Laravel - Variablen von Middleware an Controller / Route übergeben

Wie kann ich Variablen von einer Middleware an einen Controller oder eine Route übergeben, die eine solche Middleware ausführt? Ich habe einen Beitrag über das Anhängen an die Anfrage wie folgt gesehen:

$request->attributes->add(['key' => $value);

auch andere sugested mit Flash:

Session::flash('key', $value);

aber ich bin mir nicht sicher, ob das die beste Vorgehensweise ist oder ob es einen besseren Weg gibt, dies zu tun? Hier ist meine Middleware und Route:

namespace App\Http\Middleware;

use Closure;

class TwilioWorkspaceCapability
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request $request
     * @param  \Closure $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $workspaceCapability = new \Services_Twilio_TaskRouter_Workspace_Capability("xxxxx", "xxxx", "xxxx");
        $workspaceCapability->allowFetchSubresources();
        $workspaceCapability->allowDeleteSubresources();
        $workspaceCapability->allowUpdatesSubresources();
        $token = $workspaceCapability->generateToken();
        //how do I pass variable $token back to the route that called this middleware
        return $next($request);
    }
}

Route::get('/manage', ['middleware' => 'twilio.workspace.capability', function (Request $request) {
    return view('demo.manage', [
        'manage_link_class' => 'active',
        'twilio_workspace_capability' => //how do I get the token here?...
    ]);
}]);

FYI Der Grund, warum ich mich für eine Middleware entschieden habe, ist, dass ich das Token für den gesamten Lebenszyklus zwischenspeichern möchte. Andernfalls wäre dies eine schreckliche Implementierung, da ich bei jeder Anforderung ein neues Token anfordern würde.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage