Sobes.tech
Junior — Middle

Millised on WebSocket ja HTTP protokollide peamised erinevused veebirakenduste töös?

sobes.tech AI

Vastus AI-lt

HTTP on päring-vastus protokoll, kus klient saadab päringu ja server vastab, pärast mida ühendus tavaliselt suletakse. See sobib standardsete veebilehtede ja API-de jaoks, kus andmed uuenevad päringu alusel.

WebSocket on protokoll, mis loob püsiva kahepoolse ühenduse kliendi ja serveri vahel. Pärast ühenduse loomist saab andmeid edastada mõlemas suunas reaalajas ilma korduvate päringuteta.

Peamised erinevused:

  • Ühendus: HTTP on ühe suunaga (klient → server), WebSocket on kahe suunaga.
  • Ühenduse kestus: HTTP on ajutine, WebSocket on püsiv.
  • Kasutus: HTTP standardpäringute jaoks, WebSocket reaalajas rakenduste jaoks (vestlus, mängud, teavitused).

Näide WebSocketi kasutamisest iOS-is (Swift):

let url = URL(string: "wss://example.com/socket")!
let webSocketTask = URLSession.shared.webSocketTask(with: url)
webSocketTask.resume()

// Sõnumi saatmine
let message = URLSessionWebSocketTask.Message.string("Hello")
webSocketTask.send(message) { error in
    if let error = error {
        print("Saatmisel viga: \(error)")
    }
}