HTTP-pyynnön lähettäminen

Swift:
HTTP-pyynnön lähettäminen

How to:

Swiftissä HTTP-pyyntöjen lähettämiseen käytetään URLSession-luokkaa. TässäNopea esimerkki GET-pyynnön lähettämisestä:

import Foundation

// Luo URL-olio
if let url = URL(string: "http://api.example.com/data") {
    // Määritä URLSession
    let session = URLSession.shared
    
    // Luo tehtävä
    let task = session.dataTask(with: url) { (data, response, error) in
        // Tarkista virheet
        if let error = error {
            print("Virhe: \(error)")
            return
        }
        
        // Tarkista HTTP-vastaus ja tulosta data
        if let httpResponse = response as? HTTPURLResponse, httpResponse.statusCode == 200 {
            if let data = data, let dataString = String(data: data, encoding: .utf8) {
                print("Saatu data: \(dataString)")
            }
        } else {
            print("HTTP-pyyntö epäonnistui")
        }
    }
    
    // Aloita tehtävä
    task.resume()
}

Deep Dive:

HTTP-pyynnöt ovat olleet verkon perusta heti alkuajoista lähtien. Vaihtoehtoina on esimerkiksi WebSocket tai kolmansien osapuolien rajapinnat, kuten Alamofire Swiftissä. Järjestelmäkutsut rajapinnan taustalla käyttävät TCP/IP-stäkkiä tietojen siirtoon. Sertifikaatit ja HTTPS lisäävät tietoturvaa.

See Also:

Tässä muutama hyödyllinen linkki: