Метод status
Метод status применяется к экземпляру класса ClientResponse,
который возвращается при выполнении запросов через HTTP-клиент Laravel.
Метод возвращает целочисленный код состояния HTTP-ответа,
полученный от удалённого сервера. Например, 200 для успешного запроса,
404 для не найденного ресурса или 500 для ошибки сервера.
Синтаксис
<?php
$response->status();
?>
Пример
Давайте выполним GET-запрос к API и получим код состояния ответа:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Http;
class UserController extends Controller
{
public function getUsers()
{
$response = Http::get('https://api.example.com/users');
$statusCode = $response->status();
echo $statusCode;
}
}
?>
Результат выполнения кода:
200
Пример
Давайте проверим статус ответа и выполним разные действия в зависимости от него:
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Http;
class ApiController extends Controller
{
public function fetchData()
{
$response = Http::get('https://api.example.com/data');
if ($response->status() === 200) {
echo "Success: " . $response->body();
} elseif ($response->status() === 404) {
echo "Resource not found";
} else {
echo "Error: " . $response->status();
}
}
}
?>
Результат выполнения кода для успешного запроса:
"Success: {data}"
Результат выполнения кода для не найденного ресурса:
"Resource not found"
Пример
Давайте используем метод status совместно с методом successful для более наглядной проверки:
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Http;
class OrderController extends Controller
{
public function checkOrder($id)
{
$response = Http::get("https://api.example.com/orders/{$id}");
$status = $response->status();
if ($status >= 200 && $status < 300) {
echo "Order retrieved successfully. Status: " . $status;
} else {
echo "Failed to retrieve order. Status: " . $status;
}
}
}
?>
Результат выполнения кода при успешном запросе:
"Order retrieved successfully. Status: 200"
Смотрите также
-
метод
successful,
который проверяет успешность запроса (коды 200-299) -
метод
failed,
который проверяет провал запроса (коды 400-599) -
метод
body,
который получает тело ответа в виде строки -
метод
header,
который получает значение конкретного заголовка ответа