解决在Laravel 中处理OPTIONS请求的问题

时间:2022-07-27
本文章向大家介绍解决在Laravel 中处理OPTIONS请求的问题,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

前面已经说过可以通过中间件来处理OPTIONS请求,近日寻得一个简单的办法。

在路由文件中定义一个路由,通过正则来匹配相应的路由。

Route::options('/{all}', function(Request $request) {
  $origin = $request- header('ORIGIN', '*');
  header("Access-Control-Allow-Origin: $origin");
  header("Access-Control-Allow-Credentials: true");
  header('Access-Control-Allow-Methods: POST, GET, OPTIONS, PUT, DELETE');
  header('Access-Control-Allow-Headers: Origin, Access-Control-Request-Headers, SERVER_NAME, Access-Control-Allow-Headers, cache-control, token, X-Requested-With, Content-Type, Accept, Connection, User-Agent, Cookie');
})- where(['all' =  '([a-zA-Z0-9-]|/)+']);

这样就不需要中间件了,也不需要其它额外的操作。

以上这篇解决在Laravel 中处理OPTIONS请求的问题就是小编分享给大家的全部内容了,希望能给大家一个参考。