The first time I call this API it works fine. The second time I call an API using this code however it seems like nothing happens. The data returned is exactly the same and the backend doesn't register any incoming API calls from my client.
It seems like some sort of caching is happening and I've no idea how to turn it off. Using Alamofire 4.5.
This is my code:
func getPopularBrocodes(_ offset: Int, completionHandler: @escaping (([AnyObject]?, Int?, AnyObject?) -> Void)) {
let urlString = Constant.apiUrl().appendingFormat(Constant.apiGetPopularBrocodes).appending("?offset=\(offset)")
Alamofire.request(urlString, method: .get, encoding: Alamofire.JSONEncoding.default, headers: self.header).validate().responseJSON(completionHandler: {response in
if response.result.isSuccess {
if let value = response.value {
var jsonString = ""
let json = JSON(value)
jsonString = json["data"].rawString()!
let nextInt = Int(json["next"].rawString()!)
if let brocodes:Array<BroCode> = Mapper<BroCode>().mapArray(JSONString: jsonString) {
completionHandler(brocodes, nextInt, nil)
} else {
completionHandler(nil, nextInt, nil)
}
}
}
if response.result.isFailure{
}
})
}