| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- <?php
- namespace App\Http\Middleware;
- use Closure;
- use Illuminate\Http\Request;
- class checkAuthMiddleware
- {
- /**
- * Handle an incoming request.
- *
- * @param \Illuminate\Http\Request $request
- * @param \Closure(\Illuminate\Http\Request): (\Illuminate\Http\Response|\Illuminate\Http\RedirectResponse) $next
- * @return \Illuminate\Http\Response|\Illuminate\Http\RedirectResponse
- */
- public function handle(Request $request, Closure $next)
- {
- //
- $session = $request->header('token','');
- if(!$session) {
- return response()
- ->json([
- 'errno'=> 20000,
- "errmsg" => '请先登录',
- ]);
- }
- // 通过openid判断是否存在
- $user = \App\Models\Account::where("session", $session)->first();
- if(!$user) {
- return response()
- ->json([
- 'errno'=> 20000,
- "errmsg" => '请先登录',
- ]);
- }
- //
- if(strtotime($user->session_expire) < time()) {
- return response()
- ->json([
- 'errno'=> 20000,
- "errmsg" => '请先登录',
- ]);
- }
- //
- $user->session_expire = date("Y-m-d H:i:s", strtotime("+30 day"));
- $user->save();
- // $account = serialize($user);
- $request->attributes->set('account',serialize($user));//添加参数
- //
- return $next($request);
- }
- }
|