2017-02-01 3 views
0

Я новичок в Swift, я хочу разобрать JSON с TimeStamp, но у меня проблема мой TIMESTAMP не нашелTimeStamp в Alamofire Swift 3

Это мой код:

let timeStamp = NSNumber(value: Date().timeIntervalSinceNow) 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     func downloadPrograms(for timestamp: CVTimeStamp) { 

      Alamofire.request("http://52.50.138.211:8080/ChanelAPI/programs/\(timestamp)").responseArray { (response: DataResponse<[PrograToDayModel]>) in 

       let programlArray = response.result.value 



       if let programlArray = programlArray { 
        for program in programlArray { 

         print(program.description as Any) 
        } 

       } 
       self.tableView.reloadData() 
      } 
     } 

ответ

0

Прежде всего, вам нужно использовать timeIntervalSince1970 с текущей Date, потому что timeIntervalSinceNow с текущей Date возвращения 0.

Теперь вам нужно поставить downloadPrograms из стороны viewDidLoad с другими методами класса и измените его тип параметра на NSNumber, потому что вы храните временную метку в экземпляре NSNumber.

override func viewDidLoad() { 
    super.viewDidLoad() 

    let timeStamp = NSNumber(value: Date().timeIntervalSince1970) 
    self.downloadPrograms(for: timeStamp) 
} 

func downloadPrograms(for timestamp: NSNumber) { 

    Alamofire.request("http://52.50.138.211:8080/ChanelAPI/programs/\(timestamp)").responseArray { (response: DataResponse<[PrograToDayModel]>) in 

     let programlArray = response.result.value 

     if let programlArray = programlArray { 
      for program in programlArray { 
       print(program.description as Any) 
      } 
     } 
     //Reload tableView on main thread 
     DispatchQueue.main.async { 
      self.tableView.reloadData() 
     } 
    } 
} 
+0

Хорошо, спасибо, но если я хочу поставить дату неделю или месяц, как я понимаю? –

+0

@ КоляДудла Не получите свой вышеприведенный комментарий, что вы подразумеваете под «назначением даты в неделю или месяц, как я понимаю»? –