Reputation: 65
when build my code then crash on Alamofire.request(request as! URLRequestConvertible).responseJSON()
. pls suggest how to fix this crash
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)
}
}
Upvotes: 5
Views: 6380
Reputation: 101
change let request = NSMutableURLRequest(url:url! as URL)
to
var request = URLRequest(url: NSURL(string: url)! as URL)
your code look 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)
}
}
Upvotes: 10
Reputation: 453
In Swift 3, all you have to do is to change NSMutableURLRequest to URLRequest and it will work. No need to cast. Also, set var so it can be swift mutable. :) Thanks, Markus for comment.
Upvotes: 16
Reputation: 1321
You can also try with following syntax for request method:
Alamofire.request(strURL,method: .post, parameters: parameters as? [String : AnyObject], encoding: URLEncoding.default)
Upvotes: 0