// hàm lấy json
class chính :
func getApi9list() {
APIManager.sharedInstance.getApi9list { (arrCate, error , data) in
if error == "" {
}else {
AlertBar.show(.error, message: Configs.String_GetApiError, duration: 3)
}
}
}
// class APIManager
import UIKit
import Alamofire
class APIManager: NSObject {
static let sharedInstance = APIManager()
public func getApi9list(completion: @escaping(NSArray,String,Data) -> Void){
let url = "https://api.tuoitre.vn/mobileapp/home?token=da039e81&type=9list"
Alamofire.request(url).responseJSON { respone in
if let data = respone.data {
let (arrGet,error) = ModelNews().parseItemWithData(data: data as NSData, type: BlockType.None )
completion(arrGet,error as String,data)
}
else {
completion(NSArray(),"error",Data())
}
}
}
// func parseItemWithData
func parseItemWithData(data:NSData, type:BlockType )->(NSArray,NSString){
do {
let parseJSON = try JSONSerialization.jsonObject(with: data as Data, options: .allowFragments)
if let arr_cate = parseJSON as? NSArray {
let arr_cate_get = NSMutableArray()
let cateGet = ModelCate()
let arrRelated = NSMutableArray()
for itemRelated in arr_cate {
if let itemRelatedDir = itemRelated as? [String: Any] {
let (model,_) = parseWithDic(dictionary: itemRelatedDir)
arr_cate_get.add(model)
}
}
return (arr_cate_get,"")
}
} catch let error as NSError {
print("Failed to load: \(error.localizedDescription)")
}
return (NSArray(),"error")
}
func parseWithDic (dictionary: [String: Any])->(ModelNews,NSString){
let modelNewsGet = ModelNews()
if let object_id = dictionary["object_id"] as? String {
modelNewsGet.m_object_id = object_id
}
if let title = dictionary["title"] as? String {
modelNewsGet.m_title = editTitle(title: title)
}
if let description = dictionary["description"] as? String {
modelNewsGet.m_description = description
}
if let object_url = dictionary["object_url"] as? String {
modelNewsGet.m_object_url = object_url
}
if let layout = dictionary["layout"] as? String {
modelNewsGet.m_layout = layout
}
if let sport = dictionary["sport"] as? Int {
modelNewsGet.m_sport = sport
}
if let object_content = dictionary["object_content"] as? String {
modelNewsGet.m_object_content = object_content
}
if let thumb_link = dictionary["thumb_link"] as? String {
modelNewsGet.m_thumb_link = thumb_link
}
if let thumb_caption = dictionary["thumb_caption"] as? String {
modelNewsGet.m_thumb_caption = thumb_caption
}
if let time_published = dictionary["time_published"] as? String {
modelNewsGet.m_time_published = time_published
}
return (modelNewsGet,"")
}
Không có nhận xét nào:
Đăng nhận xét