EnableCrossRequestMiddleware.php 1.0 KB

1234567891011121314151617181920212223242526272829
  1. <?php
  2. namespace App\Http\Middleware;
  3. use Closure;
  4. class EnableCrossRequestMiddleware{
  5. /**
  6. * @param $request
  7. * @param Closure $next
  8. * @return mixed
  9. */
  10. public function handle($request, Closure $next)
  11. {
  12. $response = $next($request);
  13. $origin = $request->server('HTTP_ORIGIN') ? $request->server('HTTP_ORIGIN') : '';
  14. $allow_origin = [
  15. 'http://test.com',//允许访问
  16. ];
  17. // if (in_array($origin, $allow_origin)) {
  18. if($response){
  19. $response->header('Access-Control-Allow-Origin', '*');
  20. $response->header('Access-Control-Allow-Headers', 'Origin, Content-Type, Cookie, X-CSRF-TOKEN, Accept, Authorization, accessToken, X-XSRF-TOKEN');
  21. $response->header('Access-Control-Expose-Headers', 'Authorization, authenticated');
  22. $response->header('Access-Control-Allow-Methods', 'GET, POST, PATCH, PUT, OPTIONS');
  23. $response->header('Access-Control-Allow-Credentials', 'true');
  24. }
  25. // }
  26. return $response;
  27. }
  28. }