WebApi.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. namespace App\Http\Middleware;
  3. use Closure;
  4. use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware;
  5. use Illuminate\Http\Request;
  6. use Response;
  7. class WebApi extends Middleware {
  8. /**
  9. * Handle an incoming request.
  10. *
  11. * @param Request $request
  12. * @param Closure $next
  13. *
  14. * @return mixed
  15. */
  16. public function handle($request, Closure $next) {
  17. $key = $request->input('key');
  18. // 未提供 key
  19. if($key === null){
  20. return Response::json([
  21. 'ret' => 0,
  22. 'data' => 'Your key is null'
  23. ]);
  24. }
  25. if(!in_array($key, env('WEB_API_KEY'))){
  26. // key 不存在
  27. return Response::json([
  28. 'ret' => 0,
  29. 'data' => 'Token is invalid'
  30. ]);
  31. }
  32. if(env('WEB_API') == false){
  33. // 主站不提供 Webapi
  34. return Response::json([
  35. 'ret' => 0,
  36. 'data' => 'We regret this service is temporarily unavailable'
  37. ]);
  38. }
  39. return $next($request);
  40. }
  41. }