Failed to distinguish value of type "NSMutableURLRequest" (0x11beb7040) to "Alamofire.URLRequestConvertible" (0x11beb9040)

when you create my code and then go out on Alamofire.request(request as! URLRequestConvertible).responseJSON(). Pls suggest how to fix this disaster

let url = NSURL(string: "https://jsonplaceholder.typicode.com/users")
let request = NSMutableURLRequest(url:url! as URL)
request.httpMethod = "GET"
request.setValue("application/json", forHTTPHeaderField: "Content-Type")

Alamofire.request(request as! URLRequestConvertible).responseJSON(){ response in

       switch response.result
       {
          case .success(let data):                
             print(" i got my Data Yup",data)          
          case .failure(let error):
             print(error)                                
        }
    }
+4
source share
3 answers

In Swift 3, all you have to do is change NSMutableURLRequest to URLRequest and it will work. No need to quit. Also, set var so that it can be changed quickly. :) Thanks, Marcus for the comment.

+15
source

change let request = NSMutableURLRequest(url:url! as URL)to    var request = URLRequest(url: NSURL(string: url)! as URL) your code looks like this: -

    let url = NSURL(string: "https://jsonplaceholder.typicode.com/users")
    var request = URLRequest(url: NSURL(string: url)! as URL)
    request.httpMethod = "GET"
    request.setValue("application/json", forHTTPHeaderField: "Content-Type")

    Alamofire.request(request as! URLRequestConvertible).responseJSON(){ response in

           switch response.result
           {
              case .success(let data):                
                 print(" i got my Data Yup",data)          
              case .failure(let error):
                 print(error)                                
            }
        }
+1
source

:

Alamofire.request(strURL,method: .post, parameters: parameters as? [String : AnyObject], encoding: URLEncoding.default)
0

Source: https://habr.com/ru/post/1663581/


All Articles