Метод get
Метод get класса Http используется для выполнения GET-запросов к удалённым серверам. Первым параметром передаётся URL-адрес, вторым - массив параметров запроса. Метод возвращает экземпляр Response, который содержит тело ответа, статус и заголовки.
Синтаксис
<?php
use Illuminate\Support\Facades\Http;
Http::get($url, $parameters);
?>
Пример
Давайте отправим GET-запрос на внешнее API и получим список статей:
<?php
use Illuminate\Support\Facades\Http;
$res = Http::get('https://jsonplaceholder.typicode.com/posts');
$articles = $res->json();
foreach ($articles as $article) {
echo $article['title'];
}
?>
Результат выполнения кода:
"sunt aut facere repellat provident occaecati excepturi optio reprehenderit"
"qui est esse"
"ea molestias quasi exercitationem repellat qui ipsa sit aut"
"eum et est occaecati"
"nesciunt quas odio"
Пример
Давайте отправим GET-запрос с параметрами в строке запроса:
<?php
use Illuminate\Support\Facades\Http;
$res = Http::get('https://jsonplaceholder.typicode.com/posts', [
'userId' => 1,
'_limit' => 3
]);
$articles = $res->json();
foreach ($articles as $article) {
echo $article['title'];
}
?>
Результат выполнения кода:
"sunt aut facere repellat provident occaecati excepturi optio reprehenderit"
"qui est esse"
"ea molestias quasi exercitationem repellat qui ipsa sit aut"
Пример
Давайте отправим GET-запрос с заголовками авторизации:
<?php
use Illuminate\Support\Facades\Http;
$res = Http::withHeaders([
'Authorization' => 'Bearer token123',
'Accept' => 'application/json'
])->get('https://api.example.com/posts');
if ($res->successful()) {
$articles = $res->json();
foreach ($articles as $article) {
echo $article['title'];
}
} else {
echo 'Error: ' . $res->status();
}
?>
Результат выполнения кода:
"article 1"
"article 2"
"article 3"
Пример
Давайте обработаем ошибку при неудачном запросе:
<?php
use Illuminate\Support\Facades\Http;
$res = Http::get('https://jsonplaceholder.typicode.com/invalid-url');
if ($res->failed()) {
echo 'Request failed with status: ' . $res->status();
} else {
echo 'Request successful';
}
?>
Результат выполнения кода:
"Request failed with status: 404"
Смотрите также
-
метод
post,
который выполняет POST-запрос к внешнему API -
метод
json,
который преобразует ответ в массив -
метод
successful,
который проверяет успешность запроса -
метод
withHeaders,
который добавляет заголовки к запросу