在中间件 laravel 中获取 url
get the url in the middleware laravel
我有我的中间件,我试图在其中访问页面的当前 url。所以我做了类似的事情:
$url = Request::url();
我用过:
use App\Http\Requests;
use Illuminate\Http\Request;
但我不断收到以下错误:
Non-static method Illuminate\Http\Request::url() should not be called statically, assuming $this from incompatible context
有什么想法吗?
您可以从请求对象访问 url:
public function handle($request, Closure $next)
{
$url = $request->url();
...
}
Request
对象也有 fullUrl()
和 path()
方法。选择适合您的需求
在 Laravel 5 中,请求已传递到 handle()
函数
class MyMiddleware {
public function handle($request, Closure $next)
{
$url = $request->url();
// Do stuff here
return $next($request);
}
}
Laravel 5 尝试远离外观(例如:Request::url()
之类的调用)以支持使用依赖注入,因此您可能会注意到某些功能无法像您一样访问4.
Laravel 5 https://mattstauffer.co/blog/laravel-5.0-method-injection
中对依赖注入有很好的解释
我有我的中间件,我试图在其中访问页面的当前 url。所以我做了类似的事情:
$url = Request::url();
我用过:
use App\Http\Requests;
use Illuminate\Http\Request;
但我不断收到以下错误:
Non-static method Illuminate\Http\Request::url() should not be called statically, assuming $this from incompatible context
有什么想法吗?
您可以从请求对象访问 url:
public function handle($request, Closure $next)
{
$url = $request->url();
...
}
Request
对象也有 fullUrl()
和 path()
方法。选择适合您的需求
在 Laravel 5 中,请求已传递到 handle()
函数
class MyMiddleware {
public function handle($request, Closure $next)
{
$url = $request->url();
// Do stuff here
return $next($request);
}
}
Laravel 5 尝试远离外观(例如:Request::url()
之类的调用)以支持使用依赖注入,因此您可能会注意到某些功能无法像您一样访问4.
Laravel 5 https://mattstauffer.co/blog/laravel-5.0-method-injection
中对依赖注入有很好的解释