Komunikacja HTTP

Protokół HTTP (Hypertext Transfer Protocol) – używany w oknie przeglądarki, poprzedzający adres strony internetowej. Często bywa on niezauważany i po prostu omijany przez użytkowników Internetu. Jednak nawet kiedy wpiszemy sam adres, protokół http (i protokół https) pojawia się automatycznie. Pozwala on na komunikację klient – serwer. Hypertext Transfer Protocol określa w jaki sposób treści są udostępniane, przekształcane i w jaki sposób ma je odczytać serwer.


Linki HTTP

Przykładowy link HTTP może wyglądać następująco:
https://api.deante.pl/api/products?key=KLUCZ_API&lang=pl

Budowa linku

  • https:// - protokół https oznacza połączenie szyfrowane certyfikatem SSL
  • api.deante.pl - domena strony internetowej - jest to adres wskazujący miejsce w internecie
  • /api/products - ścieżka wewnętrzna w domenie - wskazuje na konkretny zasób
  • ? - znak zapytania rozpoczyna przekazywanie parametrów dodatkowych
  • key= - dodatkowy parametr zapytania - przed znakiem = występuje nazwa parametru
  • KLUCZ_API - dodatkowy parametr zapytania - wartość parametru o nazwie key
  • & - dodatkowe parametry zapytania łączone są znakiem &

Pobieranie danych przez HTTP

cURL - pobieranie przez konsolę systemową

Do pobierania danych z HTTP możemy używać np. biblioteki cURL. Po zainstalowaniu jej na naszym komputerze otrzymujemy możliwośc wykonywania zapytań z poziomu konsoli systemowej. Wystarczy jedynie wpisać odpowiednio przygotowaną komendę, aby otrzymać dane z serwera.

curl https://api.deante.pl/api/products?key=KLUCZ_API    --output produktyDeante.xml

cURL - pobieranie danych w PHP

Biblioteka cURL umożliwia pobieranie danych nie tylko poprzez konsolę systemową, może zostać również wykorzystana w aplikacji PHP. Tak pobrane dane mogą następnie zostać zaczytane do bazy produktowej w docelowej platformie sprzedażowej.

$curl = curl_init();curl_setopt($curl,     CURLOPT_URL,     "https://api.deante.pl/api/products?key=KLUCZ_API");curl_setopt($curl, CURLOPT_FAILONERROR, true);curl_exec($curl) // Wykonanie zapytania if(curl_errno($curl)){    $errorMessage = curl_error($curl);}curl_close($curl)if(isset($errorMessage)){    // Obsługa błędu (np. chwilowa niedostępność serwera lub błędny klucz API)}

Axios - pobieranie danych w NodeJS

Biblioteka axios umożliwia na wykonywanie zapytań bezpośrednio z poziomu przeglądarki lub aplikacji Node.JS. Dane pobrane przez Axios można zaczytać do bazy produktowej w swojej platformie sprzedażowej.

import axios from 'axios';try{    const response = await axios.get(        "https://api.deante.pl/api/products?key=KLUCZ_API"    )    // Pobrane dane produktowe znajdują się w obiekcie response.data    return response.data }catch(error){    // Obsługa błędu (np. chwilowa niedostępność serwera lub błędny klucz API)}
Data ostatniej modyfikacji : 2022-12-28