2017-07-12 4 views
-3

Wie bekomme ich JSON-Daten und füge sie zur URL hinzu?Wie bekomme ich JSON-Daten in Swift und füge sie zur URL hinzu

Mein Fall ist Ich werde auf JSON URL zugreifen, aber ich brauche Wert Token von anderen JSON URL.

Dieses My Json, ich brauche ein Token, um darauf zuzugreifen. https://api-sandbox.tiket.com/flight_api/all_airport/token= ......

Um Token zu bekommen, die ich von anderen JSON zugreifen müssen, wobei diese Ansicht die anderen JSON-Token zu erhalten.

{ "Diagnose": { "status": 200, "elapsetime": "0,2082", "Memoryusage": "16.99MB", "unix_timestamp": 1499832598, "bestätigen": "Erfolg", "lang ":" id " "Währung": "IDR"}, "ausgabe": "json", "login_status": "false", "Token":" b650fce732668b58b0a4c404b65932e972ad123d " }

I muss Wert Token erhalten, und fügen Sie es auf die erste JSON URL, um auf Erste JSON

Diese meine Codierung:

func getLatestKotaTujuan() {

var tujuanUrl = URLComponents(string: "https://api-sandbox.tiket.com/flight_api/all_airport?")! 
    tujuanUrl.queryItems = [ 
     URLQueryItem(name: "token", value: "4d4bba355bb920fbdc1aa3848769a59ba74ea03c"), 
     URLQueryItem(name: "output", value: "json") 
    ] 

    let request = tujuanUrl.url 
    let task = URLSession.shared.dataTask(with: request!, completionHandler: { (data, response, error) -> Void in 

     if let error = error { 
      print(error) 
      return 
     } 

     // Parse JSON data 
     if let data = data { 
      self.kotaTujuan = self.parseJsonData(data: data) 

      // Reload table view 
      OperationQueue.main.addOperation({ 
       self.tableView.reloadData() 
      }) 
     } 
    }) 

    task.resume() 
} 

Antwort

0

Sie Alamofire & SwiftyJSON

  1. Installieren zwei cocopod

    pod 'Alamofire' 
        pod 'SwiftyJSON' 
    
  2. Mein Json schauen ist wie

    {"loginNodes":[{"errorMessage":"Welcome To Alamofire","name":Enamul Haque,"errorCode":"0","photo":null}]} 
    
  3. verwenden können
  4. Deklarieren mehrdimensionales Array

    var arrRes = [[String:AnyObject]]() 
    
  5. Alamofire erhalten json vom Server

    func getList() { 
    
    
        Alamofire.request("url.....", method: .post, parameters: [ 
        "userNameid":"25" 
    
        ]).responseJSON{(responseData) -> Void in 
         if((responseData.result.value != nil)){ 
    
          // let jsonData = JSON(responseData.result.value) 
          HUD.hide(); 
    
          if((responseData.result.value != nil)){ 
           let swiftyJsonVar = JSON(responseData.result.value!) 
    
           if let resData = swiftyJsonVar["loginNodes"].arrayObject { 
            self.arrRes = resData as! [[String:AnyObject]] 
           } 
    
           if self.arrRes.count > 0 { 
            self.tableView.reloadData() 
           } 
    
          } 
         } 
        } 
    
        } 
    
  6. eingestellten Daten an Tabellendarstellung Verwendung wie

    override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
    
        return arrRes.count 
    } 
    
    
    
        override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 
        let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! Agent_Account_Balance_Cell 
    
         cell.namelabel.text = arrRes[indexPath.row]["name"] as? String 
    
         return cell 
        } 
    
Verwandte Themen