<?php namespace App\Http\Middleware; use Closure; use Redis; class Browserverification { /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { $redis = Redis::connection("central"); $key = $request->route('id'); if (!preg_match("/^[a-f0-9]{32}$/", $key)) { abort(404); } $answer = $redis->brpoplpush($key, $key, 3); if ($answer === null) { abort(404); } return $next($request); } }