Vue.js CORS Vue和OctoberCMS

Vue.js CORS Vue和OctoberCMS,vue.js,cors,octobercms,Vue.js,Cors,Octobercms,对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“访问控制允许来源”标头 我正在使用Vue VueX、Vue路由器等构建一个应用程序。。。十月。我通过MAMP在本地为API和应用程序创建虚拟域。我在十月CMS中通过插件'rluders CORS'配置了所有COR Route::group( [ 'prefix' => 'api/v1', 'middleware' => ['api','jwt.auth','\Barryvdh\Cors\

对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“访问控制允许来源”标头

我正在使用Vue VueX、Vue路由器等构建一个应用程序。。。十月。我通过MAMP在本地为API和应用程序创建虚拟域。我在十月CMS中通过插件'rluders CORS'配置了所有COR

Route::group(
    [
        'prefix' => 'api/v1',
        'middleware' => ['api','jwt.auth','\Barryvdh\Cors\HandleCors'],
    ],
    function () {
         // Routes here
    }
);
当我部署到VPS Centos 6时,我从浏览器得到了上述响应。我在API的.htaccess文件中添加了头文件。当我通过jwt.auth中间件的浏览器直接打开API时,我得到了在.htaccess文件中设置的所有头文件。但在应用程序中,不起作用

我尝试使用应用程序abc的主域。例如,在本地从我的虚拟域调用API。本地,它仍然有效。但我尝试了本地应用程序调用VPS中的主API,但没有成功


请帮帮我!谢谢

所以我的路线解决方案是寻找飞行前的反应。因此,在请求数据中,如果它为空,我将发送飞行前响应,我认为任何字符串都可以。然后有一个请求不是空的。这是我找到的最简单的工作。您仍然必须允许访问控制域。我通常将其设置为all,并且始终有一个令牌系统来验证GET以外的方法

Route::match(['POST', 'OPTIONS'],'api/update-todo', function(Request $req) {
$data = $req->input();
if (!empty($data)) {
    Todo::where('id', $data['id'])
        ->update([
        'name' => $data['name'],
        'description' => $data['description'],
        'status' => $data['status'] 
    ]);
    return response()->json([
        'Success' => $data,
    ]);
} else {
    return response()->json([
      'Success' => $req,
    ]);
}
});

在我的情况下,它与:

路由::选项“/{any}”,函数{ $headers=[ //'访问控制允许方法'=>'POST、GET、OPTIONS、PUT、DELETE', “访问控制允许标头”=>“X-Requested-With,内容类型,X-Auth-Token,来源,授权” ]; return\Response::make'youarconnectedtotheapi',200,$headers;
}->其中‘any’,‘any’;飞行前选项请求失败。直接从浏览器访问API不会触发CORS,因此不会发送预飞行。当您尝试从应用程序中发出请求时,应该能够在浏览器开发人员工具的“网络”选项卡中看到飞行前选项请求。如果没有,请尝试其他浏览器。检查开发人员工具中的响应头以检查返回的内容。错误消息表明该请求中缺少访问控制允许源。将显示临时标头。我在Chrome和Safari浏览器中都没有任何选项请求