Если это не удастся, вы должны погрузиться и посмотреть на ошибку, которая была возвращена. Вы можете даже захотеть взглянуть на тело ответа (если это сервер разработки, он может предоставить некоторые полезные сообщения об ошибках в теле ответа).
let group = DispatchGroup()
group.enter()
Alamofire.request(...)
.responseJSON { response in
defer { group.leave() }
switch response.result {
case .failure(let error):
print(error)
print(response.response ?? "no HTTPURLResponse")
if let data = response.data {
if let string = String(data: data, encoding: .utf8) {
print(string)
} else {
print(data as NSData)
}
} else {
print("no data")
}
case .success(let json):
print(json)
}
}
Кстати, я бы предложил переместить вызов leave
за пределы любого оператора if
/ switch
, потому что вы хотите убедиться, что ваша группа рассылки удовлетворена независимо от того, была она успешной или нет.
Но, суть в том, что вы не сможете диагностировать проблему, пока не начнете точно смотреть, какая ошибка была возвращена.