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

Метод withToken

Метод withToken применяется к HTTP-клиенту Laravel и добавляет заголовок Authorization с Bearer-токеном в запрос. Первым параметром передаётся сам токен, вторым необязательным параметром - имя заголовка (по умолчанию Authorization). Метод возвращает тот же экземпляр HTTP-клиента, что позволяет использовать цепочки вызовов.

Синтаксис

<?php use Illuminate\Support\Facades\Http; Http::withToken($token, $headerName); ?>

Пример

Давайте отправим GET-запрос к защищённому API с передачей Bearer-токена:

<?php namespace App\Http\Controllers; use Illuminate\Support\Facades\Http; class ArticleController extends Controller { public function index() { $token = 'your-api-token-here'; $res = Http::withToken($token) ->get('https://api.example.com/articles'); return $res->json(); } } ?>

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

["article 1", "article 2", "article 3"]

Пример

Отправим POST-запрос с токеном и JSON-данными:

<?php namespace App\Http\Controllers; use Illuminate\Support\Facades\Http; class ArticleController extends Controller { public function store() { $token = 'your-api-token-here'; $res = Http::withToken($token) ->post('https://api.example.com/articles', [ 'title' => 'New article', 'content' => 'Article content' ]); if ($res->successful()) { echo "Article created successfully"; } } } ?>

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

"Article created successfully"

Пример

Используем метод с кастомным именем заголовка:

<?php namespace App\Http\Controllers; use Illuminate\Support\Facades\Http; class ArticleController extends Controller { public function show() { $token = 'your-api-token-here'; $res = Http::withToken($token, 'X-API-TOKEN') ->get('https://api.example.com/articles/1'); if ($res->successful()) { $data = $res->json(); echo $data['title']; } } } ?>

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

"article 1"

Пример

Комбинируем метод withToken с другими методами HTTP-клиента:

<?php namespace App\Http\Controllers; use Illuminate\Support\Facades\Http; class ArticleController extends Controller { public function update() { $token = 'your-api-token-here'; $res = Http::withToken($token) ->withHeaders([ 'X-Custom-Header' => 'custom-value' ]) ->timeout(30) ->put('https://api.example.com/articles/1', [ 'title' => 'Updated article' ]); return $res->json(); } } ?>

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

["title" => "Updated article", "content" => "Article content"]

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

  • метод withHeaders,
    который добавляет произвольные заголовки к запросу
  • метод withBasicAuth,
    который добавляет Basic-аутентификацию
  • метод acceptJson,
    который устанавливает заголовок Accept: application/json
  • метод json,
    который парсит JSON-ответ от API
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить