SignAuthMiddleware.php 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <?php
  2. namespace App\Http\Middleware;
  3. use Closure;
  4. use Illuminate\Support\Facades\Log;
  5. class SignAuthMiddleware
  6. {
  7. /**
  8. * Handle an incoming request.
  9. *
  10. * @param \Illuminate\Http\Request $request
  11. * @param \Closure $next
  12. * @return mixed
  13. */
  14. public function handle($request, Closure $next)
  15. {
  16. Log::info('签名--' . generateSign($request->all(),config('customer.app_secret')));
  17. return $next($request);
  18. try {
  19. if (!verifySign($request->get('sign'), $request->all(), config('customer.app_secret'))) {
  20. $error = [
  21. 'message' => '数据验签失败',
  22. 'code' => 401,
  23. ];
  24. return response()->json($error)->setStatusCode(401);
  25. }
  26. } catch (\Exception $e) {
  27. $error = [
  28. 'message' => $e->getMessage(),
  29. 'code' => 401,
  30. ];
  31. return response()->json($error)->setStatusCode(401);
  32. }
  33. return $next($request);
  34. }
  35. }