Доступ к веб-службам
В нашем приложении нам может потребоваться подключиться к API и получить данные из этого API и использовать их в нашем приложении.
Во-первых, нам нужен URL-адрес, который предоставит нам данные.
api.openweathermap.org/data/2.5/forecast?id=524901&APPID=1111111111
После этого нам нужно добавить исключение безопасности транспортного уровня, чтобы наше приложение могло взаимодействовать с веб-службой, если служба не https. Мы внесем эти изменения вinfo.plist файл.
Наконец, мы создадим URLSession для создания сетевого запроса.
let urlString = URL(string: "your URL") // Making the URL
if let url = urlString {
let task = URLSession.shared.dataTask(with: url) {
(data, response, error) in // Creating the URL Session.
if error != nil {
// Checking if error exist.
print(error)
} else {
if let usableData = data {
// Checking if data exist.
print(usableData)
// printing Data.
}
}
}
}
task.resume()
Вот как вы можете использовать веб-службы в своем приложении с помощью сеансов URL.
Аламофайр
Alamofire - это сетевая библиотека HTTP, написанная на быстрой основе. Его можно использовать для выполнения запросов URL, публикации данных, получения данных, загрузки файла, данных, аутентификации, проверки и т. Д.
Чтобы установить Aalmofire, вы можете официально зайти в Alamofire на GitHub и прочитать их руководство по установке.
Запрос в Alamofire
Чтобы сделать запрос в Alamofire, мы должны использовать следующую команду.
Import Alamofire
Alamofire.request("url");
Обработка ответов
Следующая команда используется для обработки ответа.
Alamofire.request("url").responseJSON {
response in
print(response.request)
// original URL request
print(response.response)
// HTTP URL response
print(response.data)
// server data
print(response.result)
// result of response serialization
if let JSON = response.result.value {
print("JSON: \(JSON)")
}
}
Проверка ответа
Следующая команда используется для обработки ответа.
Alamofire.request("https://httpbin.org/get").validate().responseJSON {
response in
switch response.result {
case .success:
print("Validation Successful")
case .failure(let error):
print(error)
}
}
Это основы создания URL-запроса с использованием URL-сеансов и Alamofire. Для более продвинутого Alamofire, пожалуйста, посетите Alamofire Documentation , и вы можете прочитать об этом подробно.