Obsługa błędów w API
Założenie: Nauczymy się, jak w prosty sposób obsłużyć błędy w REST API, zwracając odpowiednie kody odpowiedzi HTTP.
Krok po kroku:
- Definicja funkcji obsługującej żądanie: Zdefiniujmy funkcję, która będzie przetwarzać żądanie API. W tym przykładzie, funkcja będzie zwracać dane użytkownika lub błąd, jeśli użytkownik nie istnieje.
- Obsługa błędów za pomocą `http_response_code()`: Funkcja `http_response_code()` ustawia kod odpowiedzi HTTP. W tym przykładzie, używamy 404 (Not Found) dla braku użytkownika i 400 (Bad Request) dla błędnego żądania.
- Zwrócenie odpowiedzi JSON: Wykorzystujemy `json_encode()` aby zwrócić dane w formacie JSON, co jest standardowym formatem dla API.
['id' => 1, 'name' => 'Jan Kowalski'],
2 => ['id' => 2, 'name' => 'Anna Nowak']
];
if (isset($users[$userId])) {
return $users[$userId];
} else {
http_response_code(404); // Ustawienie kodu odpowiedzi 404 - Not Found
return ['error' => 'Użytkownik nie znaleziony'];
}
}
$userId = isset($_GET['id']) ? $_GET['id'] : null;
if ($userId !== null) {
$user = getUser($userId);
header('Content-Type: application/json');
echo json_encode($user);
} else {
http_response_code(400); // Ustawienie kodu odpowiedzi 400 - Bad Request
echo json_encode(['error' => 'Błędne żądanie']);
}
?>
Ten przykład pokazuje podstawowe podejście do obsługi błędów w API. Pamiętaj, że w rzeczywistych aplikacjach, obsługa błędów powinna być bardziej rozbudowana i uwzględniać logowanie błędów, bardziej szczegółowe komunikaty o błędach oraz odpowiednie mechanizmy obsługi wyjątków.