РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
478 of 1392 menu

Метод bearerToken

Метод bearerToken применяется к объекту запроса и извлекает токен из заголовка Authorization, имеющего формат Bearer <token>. Метод автоматически удаляет префикс Bearer и возвращает чистую строку токена. Если заголовок отсутствует или имеет неверный формат, метод возвращает null. Метод не принимает параметров.

Синтаксис

<?php $request->bearerToken(); ?>

Пример

Давайте получим Bearer-токен из входящего запроса и выведем его в контроллере:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class ProfileController extends Controller { public function show(Request $request) { $token = $request->bearerToken(); echo $token; } } ?>

Если запрос содержит заголовок:

Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9

Результат выполнения кода:

"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"

Пример

Давайте проверим наличие токена и выполним действие в зависимости от результата:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class ApiController extends Controller { public function authenticate(Request $request) { $token = $request->bearerToken(); if ($token) { echo "Token found: " . $token; } else { echo "Token not found"; } } } ?>

Если запрос не содержит заголовок Authorization:

"Token not found"

Пример

Давайте используем метод bearerToken для авторизации через сервис с проверкой:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Services\AuthService; class AuthController extends Controller { protected $authService; public function __construct(AuthService $authService) { $this->authService = $authService; } public function validateToken(Request $request) { $token = $request->bearerToken(); if (!$token) { return response()->json(['error' => 'Token required'], 401); } $user = $this->authService->getUserByToken($token); if (!$user) { return response()->json(['error' => 'Invalid token'], 401); } return response()->json(['user' => $user]); } } ?>

При запросе с валидным токеном:

"{\"user\":{\"id\":1,\"name\":\"user\"}}"

При запросе без токена:

"{\"error\":\"Token required\"}"

Смотрите также

  • метод header,
    который получает значение любого заголовка запроса
  • метод user,
    который возвращает аутентифицированного пользователя
  • метод wantsJson,
    который проверяет ожидание JSON-ответа
  • метод ajax,
    который проверяет AJAX-запрос
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить