Infó VII. tétel Flashcards
A Web Működésének Alapjai
Kliens-Szerver Modell:
Az internetes alkalmazások két fő komponensből állnak: kliens (felhasználói oldal) és szerver (szolgáltató oldal).
A kliens kéréseket küld a szervernek, és a szerver válaszokat küld vissza a kliensnek.
Protokollok:
A webes kommunikáció során az HTTP (HyperText Transfer Protocol) a legelterjedtebb protokoll.
HTTPS (HTTP Secure) a biztonságos, titkosított kapcsolatot biztosítja.
Webböngészők:
Különböző webböngészők (Chrome, Firefox, Safari stb.) segítik a felhasználókat az internetes tartalmak megjelenítésében.
Web Szabványok és Szabványügyi Szervezetek
Internet Assigned Numbers Authority (IANA)
Az Internet működésének alapjául szolgáló kódok és számok kiosztását
koordinálja. Az IP-címek kiosztásának globális koordinálása. – Nyilvántartja a különféle Internet protokollokhoz használt kódokat és számokat.
Az IANA egy funkció, melyet jelenleg egy nonprofit cég, az Internet Corporation for Assigned Names and Numbers (ICANN) működtet.
W3C (World Wide Web Consortium):
Felelős a legtöbb webes szabvány és ajánlás kifejlesztéséért (pl., HTML, CSS).
IETF (Internet Engineering Task Force):
Az internetes protokollok és szabványok fejlesztéséért felelős szervezet.
IETF - Internet protokollkészletet (TCP/IP) fejleszti.
Alapítás 1986 január 16.
A szabványokhoz kötődő specifikációkat RFC sorozatban publikálja.
URI (Uniform Resource Identifier)
Egyedi azonosító a weben található erőforrásokhoz.
Két fő típus: URL (Uniform Resource Locator) és URN (Uniform Resource Name)
URI Felépítése
scheme:[//authority]path[?query][#fragment]
scheme: A protokoll, amelyet használni kell az erőforrás eléréséhez (pl., http, https, ftp).
authority: A hozzáférési jogosultságokat tartalmazza, általában a host (domain vagy IP cím) és a port.
path: Az erőforrás elérésének útvonala a host-on belül.
query: Opcionális rész, amely paramétereket tartalmaz a kéréshez.
fragment: Az erőforrás egy specifikus részére mutató horgony.
HTTP: kérések és válaszok felépítése
Kérés:
Metódus:
Az HTTP metódus meghatározza, hogy a kliens milyen műveletet kíván elvégezni a szerveren.
Példák: GET, POST, PUT, DELETE.
URI (Uniform Resource Identifier):
Az azonosítója az erőforrásnak, amelyre vonatkozik a kérés.
Példa: /path/to/resource vagy https://www.example.com/resource.
Verziószám:
Az alkalmazott HTTP verzió, például HTTP/1.1.
Fejlécek (Headers):
Információk a kérésről, például a tartalom típusa, elfogadott nyelvek, stb.
Tartalom (Body):
GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8
Válasz:
Állapotkód:
Az HTTP válaszban található állapotkód jelzi, hogy a kérés sikeres volt-e vagy sem, és ha nem, akkor mi volt a hiba.
Fejlécek (Headers):
A válaszhoz tartozó információk, például a tartalom típusa, a válasz dátuma, stb.
Tartalom (Body):
Az opcionális tartalom része, amely a válasz törzsét tartalmazza.
HTTP/1.1 200 OK
Date: Mon, 01 Jan 2023 12:00:00 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 1234
<!DOCTYPE html>
<html>
<head>
<title>Example Page</title>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
HTTP Metódusok
GET:
Az erőforrás olvasására szolgál.
Nem hozhat létre, módosíthat vagy törölhet adatokat a szerveren.
POST:
Az adatok küldésére és az erőforrás létrehozására szolgál a szerveren.
A kérés törzse (body) tartalmazza az adatokat.
PUT:
Az erőforrás létrehozására vagy frissítésére szolgál.
Általában a kérés törzse tartalmazza az új vagy frissítendő adatokat.
DELETE:
Az erőforrás törlésére szolgál.
Nem minden szerver támogatja ezt a metódust biztonsági okokból.
HEAD:
A HEAD metódus egy GET kéréshez hasonlít, de a szerver csak a fejléceket küldi vissza.
Hasznos információkhoz, például a tartalom hosszához vagy a módosítás dátumához.
OPTIONS:
Lehetővé teszi a kliens számára, hogy megkérdezze a szervert, milyen HTTP metódusokat és fejléceket támogat.
PATCH:
Az erőforrás részleges módosítására szolgál, a kérés törzse tartalmazza a módosításokat.
TRACE:
A TRACE metódus a kérés útvonalát teszi láthatóvá, és gyakran hibakeresésre vagy diagnosztikai célokra használják.
Állapotkódok
1xx informáló - kapcsolat állapotát
2xx siker - sikeresen fogadta a cél, értelmezte
3xx átirányítás - a felhasználói ágens további műveletet kell végrehajtson a kérés elvégzéséhez, automatikusan elvégzendő
4xx kliens hiba - a kérés rossz szintaxisú vagy nem teljesíthető
5xx szerver hiba - a szerver nem teljesített egy érvényes kérést
Tartalomegyeztetés
A felhasználói ágensek befolyásolhatják, hogy melyik reprezentáció lenne számukra a legalkalmasabb (nyelv, kódolás, formátum stb.) és az eredet szerver azt ábrázolja számukra.
Proaktív egyeztetés - szerver választja ki a felhasználói ágens kifejezett preferenciái alapján
Reaktív egyeztetés - szerver választásra kínálja a felhasználói ágensnek a reprezentációk listáját
Sütik
Kisméretű adatfájlok a kliens oldalán, amelyek információkat tárolnak a felhasználóról.
HTML (HyperText Markup Language)
Strukturált dokumentumok megjelenítésére használt nyelv.
Tartalmazza a weboldalak szövegét, képeit, linkeket stb.
XML (eXtensible Markup Language)
Általános célú jelölőnyelv, adatcsere és konfigurációs fájlokhoz használják.
CSS (Cascading Style Sheets)
A HTML dokumentumok stílusát és elrendezését határozza meg
Sass és Less
CSS kiterjesztéseket nyújtó préprocesszorok
JSON (JavaScript Object Notation)
Adatcsere formátuma, könnyen olvasható és írható.
Gyakran használják webes API-k kommunikációjához.