本文整理汇总了PHP中Illuminate\Contracts\Auth\Guard::setUser方法的典型用法代码示例。如果您正苦于以下问题:PHP Guard::setUser方法的具体用法?PHP Guard::setUser怎么用?PHP Guard::setUser使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Illuminate\Contracts\Auth\Guard
的用法示例。
在下文中一共展示了Guard::setUser方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: handle
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$apiKey = Request::input('api_key');
if (!$apiKey) {
$apiKey = $request->headers->get(Config::get('apiguard.keyName'));
}
if ($apiKey) {
if ($user = $this->userService->getUserByApiKey($apiKey)) {
if (empty($user->allowed_ip_range) || IpRangeChecker\Checker::isIpInRange(Request::getClientIp(), $user->allowed_ip_range)) {
$this->auth->setUser($user);
}
}
}
if ($this->auth->guest()) {
if ($request->ajax()) {
return response('Unauthorized.', 401);
} else {
return redirect()->guest('auth/login');
}
}
return $next($request);
}
示例2: handle
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
* @throws \App\Exceptions\InvalidCredentialsException
* @throws \App\Exceptions\NoAuthenticationException
*/
public function handle($request, Closure $next)
{
if (empty($request->header('Authorization'))) {
throw new \App\Exceptions\NoAuthenticationException();
}
$header = $request->headers->get('Authorization');
if (starts_with(strtolower($header), 'bearer')) {
//If token is passed (to refresh)
/** @var User $user */
$user = \JWTAuth::setRequest($request)->parseToken()->authenticate();
\JWTAuth::invalidate();
//invalidate the old token
$this->auth->setUser($user);
} else {
//if credentials are passed
$credentials = ['email' => $request->getUser(), 'password' => $request->getPassword()];
$this->auth->once($credentials);
}
$isAuthenticated = $this->auth->check();
if (!$isAuthenticated) {
throw new \App\Exceptions\InvalidCredentialsException();
}
return $next($request);
}
示例3: handle
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
* @throws \App\Exceptions\InvalidCredentialsException
* @throws \App\Exceptions\NoAuthenticationException
*/
public function handle($request, Closure $next)
{
$user = \JWTAuth::setRequest($request)->parseToken()->authenticate();
$this->auth->setUser($user);
return $next($request);
}