Junior — Middle
Jaké jsou klíčové rozdíly mezi protokoly WebSocket a HTTP v kontextu fungování webových aplikací?
sobes.tech AI
Odpověď od AI
HTTP je protokol požadavek-odpověď, kde klient odešle požadavek a server odpoví, poté je spojení obvykle uzavřeno. Je vhodný pro standardní webové stránky a API, kde jsou data aktualizována na požádání.
WebSocket je protokol, který navazuje trvalé obousměrné spojení mezi klientem a serverem. Po navázání spojení mohou být data přenášena oběma směry v reálném čase bez nutnosti opakovaných požadavků.
Klíčové rozdíly:
- Spojení: HTTP je jednostranné (klient → server), WebSocket je obousměrné.
- Spojení: HTTP je dočasné, WebSocket je trvalé.
- Použití: HTTP pro standardní požadavky, WebSocket pro aplikace v reálném čase (chat, hry, oznámení).
Příklad použití WebSocket na iOS (Swift):
let url = URL(string: "wss://example.com/socket")!
let webSocketTask = URLSession.shared.webSocketTask(with: url)
webSocketTask.resume()
// Odeslání zprávy
let message = URLSessionWebSocketTask.Message.string("Hello")
webSocketTask.send(message) { error in
if let error = error {
print("Chyba při odesílání: \(error)")
}
}