Я пытаюсь найти самый простой способ сделать HTTP-запрос в Swift 4 из командной строки. Я скопировал этот код из Руководство по программированию сеансов URL и добавил пару операторов печати. Я не могу понять, почему .dataTask
не выполняется.
print("Testing URLSession")
let sessionWithoutADelegate = URLSession(configuration: URLSessionConfiguration.default)
if let url = URL(string: "https://www.example.com/") {
print("Encoded url \(url)")
(sessionWithoutADelegate.dataTask(with: url) { (data, response, error) in
print("Executing dataTask")
if let error = error {
print("Error: \(error)")
} else if let response = response,
let data = data,
let string = String(data: data, encoding: .utf8) {
print("Response: \(response)")
print("DATA:\n\(string)\nEND DATA\n")
}
}).resume()
}
Цель состоит в том, чтобы получить данные из API REST, но я даже не могу сделать простой запрос GET
, чтобы он работал правильно...
URLSessionTask
выполняется асинхронно, поэтому, если программа завершается до завершения, вы никогда не увидите ее результата. - person NobodyNada   schedule 20.09.2017PlaygroundPage.current.needsIndefiniteExecution = true
на игровую площадку - person Nazmul Hasan   schedule 20.09.2017URLSessionTask
? - person mooglinux   schedule 20.09.2017CFRunLoopRun()
- person Ssswift   schedule 21.09.2017