SZC logo

Kecskeméti SZC

OM kód: 203041/002 | 6090 Kunszentmiklós, Apostol P. u. 2-6.

Intézmény logo

Kecskeméti SZC Virágh Gedeon Technikum

HírekKözérdekű adatokCLASSROOMKRÉTA

Mi az a REST?

Mi az a REST?


Mi az a REST?

A REST (Representational State Transfer) egy architektúra, nem konkrét protokoll, nem szoftver, nem varázslat.

👉 Magyarul: egy szabályrendszer arra, hogyan kommunikáljanak rendszerek egymással weben keresztül.

A REST tipikusan:

  • HTTP-t használ
  • URL-ekkel dolgozik
  • erőforrásokat kezel

1. Alapfogalom: erőforrás (resource)

REST-ben minden egy erőforrás.

Példák:

  • felhasználó
  • eszköz
  • VLAN
  • rendelés

És ezek URL-en érhetők el:

/users
/devices
/vlans/10

 

Nem „parancsokat” hívsz, hanem dolgokat kezeled.


2. HTTP műveletek (a REST igazi lelke)

Nem találgatás, minden művelethez tartozik egy ige:

MűveletJelentés
GETlekérdezés
POSTlétrehozás
PUTteljes módosítás
PATCHrészleges módosítás
DELETEtörlés

Példa:

GET /devices

 

→ összes eszköz lekérése

POST /devices

 

→ új eszköz létrehozása


3. Stateless működés (amit mindenki elront fejben)

Ez az egyik legfontosabb.

👉 A szerver nem emlékszik rád.

Minden kérésben benne kell lennie:

  • ki vagy
  • mit akarsz

Következmény:

  • nincs „session varázslat”
  • minden request önálló

Ezért van:

  • token
  • auth header

4. Kliens–szerver modell

  • kliens → kér
  • szerver → válaszol

A kettő független:

  • frontend változhat
  • backend változhat

Nem törik el minden, mint egy rosszul megírt Windows frissítés után.


5. Adatformátum (JSON)

REST nem kötelezően JSON, de… gyakorlatban igen.

Példa válasz:

 

{
  "hostname": "router1",
  "ip": "192.168.1.1"
}

 

Ez:

  • könnyen olvasható
  • könnyen feldolgozható

XML is lehetne… csak minek szenvedni.


6. URI felépítés (hol hibáznak a diákok)

Rosszul:

/getAllDevices

 

Jól:

/devices

 

👉 REST nem „függvényhívás”, hanem erőforrás-alapú.


7. HTTP státuszkódok (élet-halál kérdés vizsgán)

KódJelentés
200OK
201Létrehozva
400Hibás kérés
401Nincs jogosultság
404Nem található
500Szerver hiba

Ha valaki 404-et nem ismeri, akkor az internet eddig kímélte.


8. REST előnyei

  • egyszerű
  • skálázható
  • platformfüggetlen
  • jól automatizálható

👉 ezért használják mindenhol


9. REST a hálózatokban (itt jön a lényeg neked)

Példa:

  • switch API → VLAN létrehozás
  • router API → route lekérdezés

Python példa:

 

import requests

response = requests.get("http://api.example.com/devices")
print(response.json())

 

Nem SSH-zol, nem pötyögsz:
👉 program beszél a hálózattal


10. REST vs. hagyományos CLI

CLIREST
kéziautomatizált
hibalehetőség nagykontrollált
lassúgyors
emberigépi

11. Gyakori vizsgacsapdák

❌ „REST egy protokoll”

→ Nem. Architektúra.

❌ „REST csak JSON”

→ Nem. De általában igen.

❌ „POST = lekérdezés”

→ Nem. GET a lekérdezés.


12. Egyben az egész

REST lényege:

👉 URL + HTTP művelet + adat (JSON) → művelet az erőforráson

 

1. REST API – mit jelent pontosan?

A REST API egy olyan alkalmazásprogramozási interfész (API), amely a REST architektúra elveit követi, és tipikusan HTTP-n keresztül kommunikál.

👉 Emberi nyelven:
egy szabványos mód arra, hogy programok weben keresztül adatokat kérjenek, módosítsanak, töröljenek.


2. Az API fogalma (mert itt csúsznak el sokan)

API = kapcsolódási felület két szoftver között

Példa:

  • frontend (weboldal)
  • backend (szerver)

A frontend nem „turkál” a backendben, hanem:
👉 API-n keresztül kér adatot


3. REST API alapelvek (nem dísznek vannak)

1. Erőforrás-alapú működés

Minden adat egy resource (erőforrás).

Példa:

/users
/devices
/orders/123

 

👉 Nem „műveleteket hívsz”, hanem dolgokat kezelsz.


2. HTTP metódusok használata

A műveletet nem a URL mondja meg, hanem a HTTP ige.

MetódusJelentés
GETlekérdezés
POSTlétrehozás
PUTteljes módosítás
PATCHrészleges módosítás
DELETEtörlés

3. Stateless működés

Ez a kulcs.

👉 A szerver nem tárol állapotot a kliensek között.

Minden kérés tartalmaz:

  • autentikációt
  • adatokat
  • kontextust

Következmény:

  • skálázható
  • egyszerűbb
  • de több adatot kell küldeni

4. Egységes interfész (Uniform Interface)

Ez az, amitől REST REST lesz.

Szabályok:

  • konzisztens URL-ek
  • szabványos HTTP használat
  • azonos működés minden resource-nál

5. Rétegezett rendszer

A kliens nem tudja, hogy:

  • proxy
  • load balancer
  • cache
    van-e közben

👉 és nem is kell tudnia


6. Cache-elhetőség

A válaszok cache-elhetők.

Példa:

  • GET kérés eredménye eltárolható
  • nem kell mindig szervert terhelni

4. REST API működés lépésről lépésre

Példa: eszközök lekérdezése

1. Kérés:

 

GET /devices HTTP/1.1
Host: api.szerver.hu
Authorization: Bearer TOKEN

 

2. Szerver feldolgozza

3. Válasz:

 

{
  "devices": [
    {"name": "router1", "ip": "192.168.1.1"},
    {"name": "switch1", "ip": "192.168.1.2"}
  ]
}

 


5. HTTP kérés részei

1. URL

https://api.szerver.hu/devices/1

 

2. Method

GET / POST / stb.

3. Header

  • Authorization
  • Content-Type

4. Body (nem mindig van)

POST / PUT esetén


6. Adatformátumok

Leggyakoribb:

  • JSON ✔️
  • XML (régebbi)

JSON példa:

 

{
  "username": "admin",
  "role": "network"
}

 


7. Státuszkódok (ezekből él a diagnosztika)

KódJelentés
200siker
201létrehozva
204nincs tartalom
400hibás kérés
401nincs hitelesítés
403tiltott
404nem található
500szerverhiba

👉 Ha valaki API-zik és nem nézi a státuszkódot, az vakon repül.


8. REST API tervezési szabályok

Jó gyakorlat:

GET /users
GET /users/1
POST /users
DELETE /users/1

 

Rossz:

/getUsers
/deleteUser

 

👉 REST nem RPC (nem függvényhívás).


9. Autentikáció

Leggyakoribb:

  • API kulcs
  • Bearer token
  • OAuth

Példa:

Authorization: Bearer eyJhbGciOiJIUzI1NiIs...

 


10. REST API hálózati környezetben

Na itt lesz hasznos neked.

Mire használják:

  • router konfiguráció
  • VLAN kezelés
  • monitoring
  • automatizálás

Példa:

 

POST /vlans

 

→ új VLAN létrehozása switchen


11. REST API + Python

Példa:

 

import requests

url = "http://api.szerver.hu/devices"
response = requests.get(url)

print(response.status_code)
print(response.json())

 

👉 ez a pont, ahol a rendszergazda átlép „scriptelő üzemmódba”


12. REST előnyei

  • egyszerű
  • jól dokumentálható
  • platformfüggetlen
  • automatizálható
  • skálázható

13. REST hátrányai (igen, vannak)

  • stateless → több adatforgalom
  • nem mindig hatékony nagy adatoknál
  • verziókezelés macerás

14. REST vs SOAP (vizsgakedvenc)

RESTSOAP
könnyűnehéz
JSONXML
gyorslassabb
modernrégi enterprise

Partnereink

SZC logo

Kecskeméti SZC


Kecskeméti SZC Virágh Gedeon Technikum

6090 Kunszentmiklós, Apostol P. u. 2-6.

Telefon: 76/550-180

E-mail: viragh(kukac)kecskemetiszc.hu

OM azonosító: 203041/002

Felnőttképzési nyilvántartás száma: Fnysz: E-001288/2015


2026Kecskeméti SZC Virágh Gedeon Technikum