【发布时间】:2016-06-29 04:06:29
【问题描述】:
这是控制器中的方法。它是由 x-editable ajax 请求的。
/**
* Update base info such as status.
*
* @param Request $request
* @return mixed
*/
public function postUpdateInfo(Request $request)
{
$this->middleware('recruit');
dd('passed');
$recruit = Recruit::find($request->get('pk'));
list($key, $value) = array($request->get('name'), $request->get('value'));
if ($recruit->update([$key => $value])) {
return Response::json(['success' => 1]);
}
}
在中间件中,代码如下:
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next, $permission)
{
die();
if (Entrust::can($permission)) {
return $next($request);
}
$this->belongsToMe($request, $this->instance);
return $next($request);
}
但在 chrome 中,我在网络中查看响应。
那么,我认为 ajax 请求中忽略了中间件?太神奇了。
非常感谢。
【问题讨论】:
-
您可能在控制器的错误位置注册了中间件。查看中间件的文档并查看正确的位置。
标签: php ajax laravel laravel-5 laravel-middleware