我正在尝试确定是否可以使用带有刀片/视图的常规 Laravel 身份验证路由进行基本身份验证,然后加载 SPA(带有自己的路由器的 Vue.js)并通过 Dingo 调用 API?
目前我在我的顶部有这个routes.php
,它有效:
// All routes through web middleware
Route::group(['middleware' => 'web'], function () {
// Authentication
Route::auth();
// Authenticated routes
Route::group(['middleware' => 'auth'], function () {
// Load main SPA
Route::get('/', 'AppController@spa');
});
});
app.domian.com/
受 Auth 保护,这就是 SPA 使用的路由。我使用标准的、内置的 Laravel Auth 页面(非 SPA),因此当用户登录或注册时,它允许访问主路由并加载 SPA。
我想做的是从现在开始使用 Dingo。所以所有的调用app.domian.com/api/*
都由 Dingo 处理。
我已将此添加到相同的路由文件中:
$api = app('Dingo\Api\Routing\Router');
$api->version('v1', function($api) {
$api->group(['middleware' => 'auth'], function ($api) {
// API prefix: api
$api->get('user', function($api) {
return Auth::user();
});
});
});
这似乎不起作用。
甚至可以以这种方式使用 Dingo,或者我必须放弃内置的 Auth 以获得 JWT 之类的东西。我希望将来能做到这一点,但现在我只需要让它工作。