Truy cập Dịch vụ Web

Trong ứng dụng của chúng tôi, chúng tôi có thể cần kết nối với API và truy xuất dữ liệu từ API đó và sử dụng trong ứng dụng của mình.

Đầu tiên, chúng tôi cần URL, URL này sẽ cung cấp cho chúng tôi dữ liệu.

api.openweathermap.org/data/2.5/forecast?id=524901&APPID=1111111111

Sau đó, chúng ta cần thêm ngoại lệ bảo mật lớp truyền tải để cho phép ứng dụng của chúng ta giao tiếp với dịch vụ web, nếu dịch vụ không phải là https. Chúng tôi sẽ thực hiện những thay đổi này tronginfo.plist tập tin.

Cuối cùng, chúng ta sẽ tạo một URLSession để tạo một yêu cầu mạng.

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()

Đây là cách bạn có thể Sử dụng các dịch vụ Web trong ứng dụng của mình bằng các phiên URL.

Alamofire

Alamofire là một thư viện mạng HTTP được viết nhanh chóng. Nó có thể được sử dụng để thực hiện Yêu cầu URL, Đăng dữ liệu, Nhận dữ liệu, Tải lên tệp, Dữ liệu, Xác thực, Xác thực, v.v.

Để cài đặt Aalmofire, bạn có thể truy cập chính thức Alamofire trên GitHub và đọc hướng dẫn cài đặt của họ

Thực hiện một yêu cầu trong Alamofire

Để thực hiện một yêu cầu trong Alamofire, chúng ta nên sử dụng lệnh sau.

Import Alamofire 
Alamofire.request("url");

Xử lý phản hồi

Lệnh sau được sử dụng để xử lý phản hồi.

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)")   
   } 
}

Xác thực phản hồi

Lệnh sau được sử dụng để xử lý phản hồi.

Alamofire.request("https://httpbin.org/get").validate().responseJSON {  
   response in      
   switch response.result {      
      case .success:         
      print("Validation Successful")      
      case .failure(let error):      
      print(error)      
   } 
}

Đây là những điều cơ bản để thực hiện yêu cầu URL, sử dụng URL Sessions và Alamofire. Để biết thêm về Alamofire nâng cao, vui lòng truy cập Tài liệu Alamofire và bạn có thể đọc chi tiết về nó.