Все мои конечные точки API возвращают ответ, который в Postman выглядит примерно так:
{
"statusCode": 401,
"error": "Unauthorized",
"message": "Missing authentication"
}
Я хотел бы сделать запрос и получить доступ к этим свойствам в Swift. В некоторых случаях я использую значение свойства сообщения об ошибке в начале приложения. Это будет определяться возвращенным statusCode.
Сейчас у меня есть следующее:
private var cancellable: AnyCancellable?
let url = URL(string: "http://abc336699.com/create")
self.cancellable = URLSession.shared.dataTaskPublisher(for: url!)
.map { $0.data }
До этого я пробовал tryMap, но тип возвращаемой ошибки не дайте мне необходимую гибкость. Затем я двинулся дальше и попробовал Almofire, но мне показалось, что это излишнее убийство того, что я хочу сделать.
Я хотел проверить, что возвращается в полученном мной ответе, но получаю следующую ошибку:
Cannot assign value of type 'Publishers.Map<URLSession.DataTaskPublisher, Data>' to type 'AnyCancellable'
Мне нужен простой доступ к моим ошибкам ответа, чтобы я мог интегрировать API во все приложение с помощью комбайна.