Testowanie REST API
Założenie: Nauczymy się podstawowych metod testowania prostego REST API za pomocą PHP.
Krok po kroku:
- Wykonanie żądania GET: Użyjemy funkcji
file_get_contents()
do pobrania danych z API.$url = 'https://api.example.com/data'; $response = file_get_contents($url); $data = json_decode($response, true); if ($data) { print_r($data); } else { echo "Błąd pobierania danych."; }
Ten kod pobiera dane z podanego adresu URL, dekoduja je z JSON i wyświetla. Sprawdź czy adres URL jest poprawny i czy API zwraca dane w formacie JSON.
- Weryfikacja odpowiedzi: Po pobraniu danych, sprawdzamy czy odpowiedź jest poprawna.
if (isset($data['status']) && $data['status'] == 'success') { echo "Pobrano dane poprawnie!"; } else { echo "Błąd: " . (isset($data['error']) ? $data['error'] : 'Nieznany błąd'); }
Ten kod sprawdza istnienie klucza ‘status’ i jego wartość. Możesz dostosować ten fragment do struktury odpowiedzi Twojego API.
- Wykonanie żądania POST: Do wysłania danych do API użyjemy
curl
.$url = 'https://api.example.com/data'; $data = array('name' => 'Jan', 'age' => 30); $data_string = json_encode($data); $ch = curl_init($url); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . strlen($data_string)) ); $result = curl_exec($ch); curl_close($ch); echo $result;
Ten kod wysyła żądanie POST z danymi w formacie JSON. Pamiętaj o odpowiednim ustawieniu nagłówków.
Ten przykład pokazuje podstawowe metody testowania REST API w PHP. Zachęcamy do dalszego zgłębiania tematu i eksperymentowania z różnymi metodami HTTP oraz bibliotekami, takimi jak Guzzle.