【发布时间】:2015-11-27 03:25:36
【问题描述】:
我已扩展 Illuminate\Http\Request 类并将其传递给我的控制器。
在我的控制器中,我使用$request->wantsJson() 方法检查请求是否有Accept: application/json 标头。
如果我使用基本的Illuminate\Http\Request 类,它工作得非常好,但如果我使用我的扩展类,它会说 Accept 标头为空。
use Illuminate\Http\Request;
class MyRequest extends Request
{
...
}
控制器
class MyController
{
public function search(MyRequest $request) {
if ($request->wantsJson()) {
// return json
}
// return view
}
}
这不起作用。如果我用Illuminate\Http\Request 的实例替换MyRequest,它就可以工作。如果我 var_dump $request->header('Accept'),则在使用 MyRequest 时为 NULL。
【问题讨论】:
-
你的 MyRequest 类中有 __construct() 方法吗?
-
@EricMakesStuff 不,我没有。我什至把所有的方法都去掉了,做成一个空白类来看看,还是不行
标签: json laravel request laravel-5.1 http-accept-header