И у меня есть ATS Ошибка:
App Transport Security заблокировал загрузку ресурса HTTP (http://) в виде открытого текста, поскольку он небезопасен. Временные исключения можно настроить с помощью файла Info.plist вашего приложения.
Я не могу понять причину. Мой baseURL имеет формат https
Код: Выделить всё
struct NetworkManager {
let baseURL = "https://swapi.co/api/"
let session = URLSession(configuration: .default)
func fetchEndpoint(endpoint: Endpoint, completion: @escaping (_ response: Result) -> Void) {
self.fetchURL(url: baseURL + endpoint.URL(), completion: completion)
}
func fetchURL(url: String, completion: @escaping (_ response: Result) -> Void) {
let url = URL(string: url)!
let request = URLRequest(url: url)
let task = session.dataTask(with: request) { data, response, error in
if error != nil {
completion(.Failure(error))
} else {
if let data = data {
if let json = try? JSONSerialization.jsonObject(with: data, options: []) {
OperationQueue.main.addOperation({
switch json {
case let objectResponse as JSONArray: completion(.Success(objectResponse as AnyObject?))
case let objectResponse as JSONDict: completion(.Success(objectResponse as AnyObject?))
default: break
}
})
}
}
}
}
task.resume()
}
}
Я новичок и предполагаю, что SWAPI поддерживает только протокол http.
Подробнее здесь: https://stackoverflow.com/questions/402 ... tp-resourc