Неожиданный 302 перенаправление после успеха входа в систему с использованием Sanctum Laravel SanctumPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Неожиданный 302 перенаправление после успеха входа в систему с использованием Sanctum Laravel Sanctum

Сообщение Anonymous »

Я работаю над заявлением, которое опирается на Laravel Sanctum для входа в систему. Однако после развертывания и запуска приложения на сервере я столкнулся с проблемой, в которой после успешного входа он не перенаправляет на страницу панели панели. Вместо этого он перенаправляет на страницу с ** кодом состояния 302 ** и остается на странице входа в систему. Кроме того, я получаю электронное письмо с уведомлением меня о том, что я успешно вошел в систему. < /P>
Примечание. Код работает на локальном сервере без каких -либо проблем.Route::group(['prefix' => 'admin/auth'], function () {
route::post('/login',[AuthController::class,'login'])->name('api_login');
Route::get('/logout', [AuthController::class, 'logout'])->name('api_logout');
});
< /code>
Веб -маршруты: < /p>
Route::middleware('auth:sanctum')->prefix('admin')->group(function (){
Route::get('/overview', [OverviewController::class, 'index'])->name('overview');
Route::get('/orders', [OrdersController::class, 'index'])->name('orders');
});
< /code>
AuthController -> Функция входа в систему: < /p>
public function login(LoginRequest $request)
{
try {
$credentials = $request->only('email', 'password');

if (Auth::attempt($credentials)) {
$user = Auth::user();

if ($user->email_verified_at !== null) {
// Generate a Sanctum token for the user
$token = $user->createToken('auth-token')->plainTextToken;

$ipAdress = $request->ipinfo->ip;
//send login alert
Mail::to($request->email)->send(new LoginAlert([
"CustomerName" => showUserName(),
"IpAdress" => $ipAdress,
"Location" => $request->ipinfo->country_name . ', ' . $request->ipinfo->city,
"BrowserOs" => $request->header('User-Agent')
]));

return ApiResponse::sendResponse(200, 'Authorized successfully', ['token' => $token]);
}
return ApiResponse::sendResponse(401, 'Email has not been verified', null);
}

return ApiResponse::sendResponse(401, 'Unauthorized', null);
} catch (\Exception $th) {
return ApiResponse::sendResponse(401, $th->getMessage(), null);
}
}
< /code>
Функция входа в систему Axios < /p>
function login() {
document.getElementById("login-f").addEventListener("submit", function(event) {
event.preventDefault();
});
let crsf_token = document.querySelector('meta[name="CRSF"]').getAttribute("content");
axios.defaults.headers.common['X-CSRF-TOKEN'] = crsf_token;
const data = {
email: document.getElementById('email').value,
password: document.getElementById('password').value
};
axios
.post(`/api/admin/auth/login`, data, {
responseType: "json"
})
.then(function (response) {
if (response.status === 200 && response.data.msg === "Authorized successfully") {
setTimeout(function () {
window.location.href = "/admin/overview";
}, 2000);
}
}

})
.catch(function (error) {
// handle error
console.log(error);
});
}
< /code>
Я пытался изменить маршруты несколько раз, но без успеха! Я попытался прямого входа в систему, используя PHP, но столкнулся с той же проблемой! Я также попытался отправить информацию о заголовке: Принять: Приложение/JSON, тип контента: Application/json

Подробнее здесь: https://stackoverflow.com/questions/775 ... el-sanctum
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»