Учебники

Доступ к веб-сервисам

В нашем приложении нам может потребоваться подключиться к 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

Alamofire — это сетевая библиотека HTTP, написанная на swift. Его можно использовать для выполнения URL-запросов, публикации данных, получения данных, загрузки файла, данных, аутентификации, проверки и т. Д.

Чтобы установить Aalmofire, вы можете официально зайти в Alamofire на GitHub и прочитать их руководство по установке.

Оформление запроса в Аламофире

Чтобы сделать запрос в 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 , и вы можете прочитать об этом подробно.