import UIKit
import Alamofire
//型号class ShortlistCountResponse : Decodable {
var response : String?
var data : ShortlistcountData?
}
class ShortlistcountData : Decodable {
var totalpropFavcount : Int?
var totalprojFavcount : Int?
}
//通用类定义...static func fetchGenericData(urlString: String,params : [String:Any], completion: @escaping (T) -> ()) {
let url = urlString
let headers = ["Content-Type": "application/x-www-form-urlencoded", "Accept":"application/json"]
Alamofire.request(url, method: .post, parameters:params, encoding: URLEncoding.default, headers: headers).responseJSON { response in
print(response.request?.urlRequest ?? "")
print(params)
print(response.data ?? "")
print(response.value ?? "")
switch(response.result) {
case .success(_):
if let data = response.data{
do {
let gotData = try JSONDecoder().decode(T.self, from: data)
completion(gotData)
}
catch let jsonErr {
print("Error serializing json:", jsonErr)
ActivityIndicator.dismissActivityView()
}
DispatchQueue.main.async {
ActivityIndicator.dismissActivityView()
}
}
break
case .failure(_):
print(response.result.error ?? "")
ActivityIndicator.dismissActivityView()
break
}
}
}
//好玩的通话override func viewDidLoad() {
super.viewDidLoad()
let userID = ""
let languageID = ""
let params = ["userID":userID,"languageID":languageID]
var appDelegate: AppDelegate?
Service.fetchGenericData(urlString: "your url...", params: params) { (shortlistCountResponse : ShortlistCountResponse) in
print(shortListCountResponse.data.totalprojFavcount ?? 0)
}
}