[Swift] URLSession

K S Michael·2021년 3월 11일

swift TIL

목록 보기
29/29

GET

{
    "response": {
        "holidays": [
            {
                "name": "1111",
                "date": {
                    "iso": "2020-01-01"
                }
            }
        ]
    }
}
let url = URL(string: "http://localhost:3000")!
        let request = URLSession()
        URLSession.shared.dataTask(with: url) { (data, _, error) in
            guard let jsonData = data else { return }
            do {
                let usersResponse = try JSONDecoder().decode(UserResponse.self, from: jsonData)
                let userDetails = usersResponse.results
                print(usersResponse, "=====", userDetails)
            } catch {
                print(error)
            }
        }.resume()

POST

// data
{
    "name": 1,
    "password": 2
}
struct MyRequest: Decodable {
    var name: Int
    var password: Int
}
let url = URL(string: "http://localhost:3000")!
        var request = URLRequest(url: url)
        request.httpMethod = "POST"
        let session = URLSession.shared
        session.dataTask(with: request) { (data, _, _) in
            guard let jsonData = data else { return }
            do {
                let usersResponse = try JSONDecoder().decode(MyRequest.self, from: jsonData)
                print(usersResponse)
            } catch {
                print(error)
            }
            guard let dataString = String(data: jsonData, encoding: String.Encoding.utf8) else { return }
            print(dataString)
}.resume()
profile
차근차근

0개의 댓글