Dingo API 中 JWT 的默认数据库 是 users,如何修改? 我想根据需求 访问不同的数据库如何指定?

我在看 《Laravel 教程 - 实战构架 API 服务器》,的这个教程 在 (5.2. 获取个人信息)这一节中间遇到一点问题。

Dingo API 中 JWT 的默认数据库 是 users,如何修改?
我想根据需求 访问不同的数据库如何指定?

使用了 这个中间件
$api->group(['middleware' => 'api.auth'], function($api) {
// 当前登录用户信息
$api->get('user1', 'UsersController@me1')
->name('api.user.show');

        $api->get('user2', 'UsersController@me2')
            ->name('api.user.show');
    });   

这种情况 如何 指定两个路由使用不同的 数据库?

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
a_bing
最佳答案

@Hyjal 非常感谢,解决了,跟你一样,加了一个中间件,借鉴https://www.jianshu.com/p/1c0e137b2248

5年前 评论
讨论数量: 3
a_bing

同问,求大神指点

5年前 评论

auth.php配置文件中,
'defaults' => [
'guard' => 'api',//这里是默认表 api
'passwords' => 'users',
],

'guards' => [
    'api' => [
        'driver' => 'jwt',
        'provider' => 'users',//对应 下面 providers 的 users
    ],

    'admin' => [
        'driver' => 'jwt',
        'provider' => 'admin',
    ],

],

'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => \App\Models\front_user::class,//数据表的 模型
    ],
    'admin' => [
        'driver' => 'eloquent',
        'model' => \App\Models\useradmin::class,
    ],

我是在 api.auth 这个中间件 前面再加了一个中间件 里面执行 config(['auth.defaults.guard' => 'admin']);

调用的时候
$api->group(['middleware' => ['api.auth']])//这里是默认表 front_user
$api->group(['middleware' => ['CheckAge','api.auth']])//这里表 useradmin

5年前 评论
a_bing

@Hyjal 非常感谢,解决了,跟你一样,加了一个中间件,借鉴https://www.jianshu.com/p/1c0e137b2248

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!