问题:
在 Vue 对后台的请求中,一般采用 axios 对后台进行 Ajax 交互。
交互发生时,axios 一般会发起两次请求,一次为 Options 试探请求,一次为正式请求。
由此带来的问题是:
1、后端会对一次请求进行了两次处理
分析:
可以在后端针对所有 Options 请求不理睬,直接返回。其他请求,进行正常的业务处理。
解决:
在 Laravel 后端的 路由文件(api.php)中作如下定义:
// 所有 OPTIONS 请求统一处理
Route::options('{all}', function () {
return 'options is ok';
});
继续思考:
是否可以在中间件中直接返回呢?