Как использовать async-http-client
Я пытаюсь выполнить пример async-http-client
doku. Но, к сожалению, код в закрытии не выполняется. Зачем?
import AsyncHTTPClient
let httpClient = HTTPClient(eventLoopGroupProvider: .createNew)
httpClient.get(url: "https://swift.org").whenComplete { result in
print (result)
switch result {
case .failure(let error):
print("failure")
case .success(let response):
if response.status == .ok {
print("success")
} else {
print("error in response")
}
}
}
В консоли получаю: Program ended with exit code: 0
. Так что оно выполнено успешно. Но в консоли нет оператора печати.
Благодарность!
1 ответ
Решение
Это связано с тем, что основной поток выполняется до выполнения запроса, поэтому оператор печати не будет вызван, если вы не попросите основной поток дождаться httpclient
https://github.com/swift-server/async-http-client/issues/129