#7 – Proste API w PHP do przekazywania informacji – Car Information
Witajcie, dzisiaj zajmiemy się strona serwera, a właściwie bardzo prostym API. Tak jak wspominałem w założeniach wymianę informacji pomiędzy telefonem a serwerem zrealizujemy w technologi JSON, dlatego że jest ona stosunkowo prosta i lekka. Początkowo zbudujemy statyczny plik, w którym na stałe wpiszemy kilka rekordów, tak aby móc testować jego działanie na telefonie. W dalszej części projektu zajmiemy się budowa panelu administracyjnego, dzięki czemu dane będę pobierane bezpośrednio z bazy MySQL.
Jeżeli mamy dowolny serwer (może być również lokalny, w tym celu zalecam utworzyć vhosta) na którym zainstalowany jest PHP, to już jesteśmy w połowie drogi. Teraz możemy zająć się przygotowaniem pliku. Moje API dostępne będzie poprzez zwykłą metodę GET z adresu www.mojadomena.pl/api/get_brands.php. W tym celu robię nowy plik get_brands.php.
<?php $brands = array(); // tablica z markami aut // pierwsza marka AUDI $brands[] = array( 'img' => 'http://mojadomena.pl/images/audi.png', 'name' => 'Audi' ); // pierwsza marka BMW $brands[] = array( 'img' => 'http://mojadomena.pl/images/bmw.png', 'name' => 'BMW' ); // pierwsza marka SEAT $brands[] = array( 'img' => 'http://mojadomena.pl/images/seat.png', 'name' => 'Seat' ); header('Content-type: application/json'); // nagłówek informujący o typie danych echo json_encode($brands); // wyświetlenie zakodowanych danych w JSON ?>
Jak widać plik nie jest szczególnie skomplikowany, ale dane zwracane w technologi JSON pozwolą nam testować dalsze działanie aplikacji, dla tych kilku rekordów. Jak widać tworzymy tablice w której zapisujemy dane z rekordami. Na potrzeby projektu biorąc pod uwagę założenia początkowe będziemy potrzebować zdjęcia danej marki, oraz jej nazwy. Na ekranie zobaczymy ciąg znaków w JSON.
[{"img":"http:\/\/mojadomena.pl\/images\/audi.png","name":"Audi"},{"img":"http:\/\/mojadomena.pl\/images\/bmw.png","name":"BMW"},{"img":"http:\/\/mojadomena.pl\/images\/seat.png","name":"Seat"}]
W kolejnym etapie zajmiemy się odbiorem tych danych w języku SWIFT, a także prezentacji ich w czytelnej i przejrzystej formie na liście.