Я реализую доступ к различным базам данных, но при использовании промежуточного программного обеспечения ('auth: api') он говорит, что я не аутентифицирован, и при входе в систему я получаю токен.
это происходит только тогда, когдаDB не используется по умолчанию
im на laravel 5.8
public function login(LoginRequest $request, $db)
{
Config::set("database.connections.mysql.database", $db);
if (Auth::attempt(['email' => request('email'), 'password' => request('password')])) {
$this->user = Auth::user();
$this->user->token = $this->user->createToken('ControlEscolar')->accessToken;
$status = 200;
} else {
$this->user['error'] = "Unauthorized";
$status = 401;
}
return response()->json($this->user, $status);
}
public function userData($db)
{
Config::set("database.connections.mysql.database", $db);
$user = userData::whereUserId(Auth::user()->id)
->first();
return $user;
}
при входе в систему я получаю это ...
{
"id": 1,
"name": "name of user",
...
"token": "eyJ0eXAiO...CFU"
}
такэто работает
но во втором на пользовательских данных я получаю это
{
"error": {
"message": "Unauthenticated.",
"status_code": 500,
"debug": {
"line": 67,
"file": "/Users/.../vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php",
"class": "Illuminate\\Auth\\AuthenticationException",
...
кто-то знает, как это сделать, или что я делаю неправильно