|
|
@@ -0,0 +1,56 @@
|
|
|
+<?php
|
|
|
+
|
|
|
+namespace App\Http\Middleware;
|
|
|
+
|
|
|
+use Closure;
|
|
|
+use Tymon\JWTAuth\Exceptions\JWTException;
|
|
|
+use Tymon\JWTAuth\Exceptions\TokenExpiredException;
|
|
|
+use Tymon\JWTAuth\Exceptions\TokenInvalidException;
|
|
|
+use Tymon\JWTAuth\Facades\JWTAuth;
|
|
|
+
|
|
|
+
|
|
|
+class ProcurementApiAuth
|
|
|
+{
|
|
|
+ /**
|
|
|
+ * Handle an incoming request.
|
|
|
+ *
|
|
|
+ * @param \Illuminate\Http\Request $request
|
|
|
+ * @param \Closure $next
|
|
|
+ * @return mixed
|
|
|
+ */
|
|
|
+ public function handle($request, Closure $next)
|
|
|
+ {
|
|
|
+ try {
|
|
|
+ if (! $user = JWTAuth::parseToken()->authenticate()) {
|
|
|
+ return response()->json([
|
|
|
+ 'code' => 1004,
|
|
|
+ 'msg' => '用户不存在'
|
|
|
+
|
|
|
+ ], 404);
|
|
|
+ }
|
|
|
+ return $next($request);
|
|
|
+
|
|
|
+ } catch (TokenExpiredException $e) {
|
|
|
+
|
|
|
+ return response()->json([
|
|
|
+ 'code' => 1003,
|
|
|
+ 'msg' => 'token 过期' ,
|
|
|
+ ]);
|
|
|
+
|
|
|
+ } catch (TokenInvalidException $e) {
|
|
|
+
|
|
|
+ return response()->json([
|
|
|
+ 'code' => 1002,
|
|
|
+ 'msg' => 'token 无效',
|
|
|
+ ]);
|
|
|
+
|
|
|
+ }catch (JWTException $e) {
|
|
|
+
|
|
|
+ return response()->json([
|
|
|
+ 'code' => 1001,
|
|
|
+ 'msg' => '缺少token' ,
|
|
|
+ ]);
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|