Пользовательский вход в Laravel Fortify (AuthenticateUsing) не работает
Что я делаю неправильно? Маршрутизация правильная. А в функции работает и
dd()
внутри не работает.
Я пробовал разместить
Fortify::authenticateUsing(function ($request) {})
в
FortifyServiceProvider
с
boot()
функция, но я не знаю, как вызвать ее с помощью почтового запроса xhr.
Это мое
login()
функция.
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use App\Providers\RouteServiceProvider;
use Illuminate\Http\Request;
use Laravel\Fortify\Fortify;
use App\Actions\AuthenticateLoginAttempt;
use Illuminate\Support\Facades\Hash;
use App\Models\User;
use App\Actions\Fortify\CreateNewUser;
// use Laravel\Fortify\Http\Requests\LoginRequest;
use App\Providers\FortifyServiceProvider;
class AuthController extends Controller
{
public function login(Request $request)
{
Fortify::authenticateUsing(function ($request) {
$user = User::where('email', $request->email)->first();
if ($user &&
Hash::check($request->password, $user->password)) {
return $user;
}
});
}
}
Это моя форма входа;
<form class="login" name="loginForm" id="loginbtn">
<input name="email" placeholder="handle"/>
<input name="password" type="text" placeholder="password"/>
<button name="login" class="button" type="submit">go</button>
</form>
TL; DR;JS для xhr;
document.getElementById("loginbtn").addEventListener("submit", e => {
e.preventDefault();
const formData = new FormData(document.querySelector('#loginbtn'));
console.log(...formData);
var _token = document.getElementById('_token').value;
formData.append("_token", _token);
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
console.log(this.responseText);
}
xhttp.open("POST", "/login");
xhttp.send(formData);
});