对不起,标题很奇怪。我不是母语的人。因此,这是我的routes/api.php
内容:
Route::post('login', 'ApiLoginController@login');
Route::group([
'prefix' => 'restricted',
'middleware' => 'auth:api',
], function () {
// Authentication Routes...
Route::post('logout', 'ApiLoginController@logout');
Route::get('user', 'ApiLoginController@getUser');
});
您可能知道,该文件内的每个路由默认情况下具有api
前缀。在我的Kernel.php
中,我为api
路由设置了一个中间件:
protected $middlewareGroups = [
'web' => [
...
],
'api' => [
...,
BarryvdhCorsHandleCors::class,
],
];
现在我的问题是,当我从标准应用(Angular.js应用程序)击中myapp/api/login
时,它可以正常工作,但是当我尝试从myapp/api/restricted/user
获取用户数据时,我会收到No 'Access-Control-Allow-Origin' header is present on the requested resource.
错误。
我该如何修复?
问题来自ApiLogin Controller
上的getUser
方法。我不知道为什么这会导致No 'Access-Control-Allow-Origin' header is present on the requested resource.
错误,但我很高兴它已修复。