Graphql - выборка данных в iOS - PullRequest
0 голосов
/ 07 ноября 2018

Любой, пожалуйста, помогите мне получить значение «data» из приведенного ниже ответа API. Это тип ответа GraphQL API

["data": {
    signin = {
       result = {
         firstName = evol;
          lastName = adc;
          profileImage = "http:/xxx.com/public/static/default.jpg";
          status = "<null>";
          token = "eyxxx";
         };
      };
  }]

1 Ответ

0 голосов
/ 09 ноября 2018

Вы можете получить значение данных из ответа API как

.
 let json = try JSONSerialization.jsonObject(with: data, options: .allowFragments)as? [String : Any]
 print("Json",json!)

 let jsonUnwrapped = json.unsafelyUnwrapped
 let jsonData = jsonUnwrapped["data"]as? [String : Any]
  print("data....", jsonData!)
  if let signup = jsonData.unsafelyUnwrapped as? [String : Any]
    {
     let signupDetails = signup["signin"]as? [String : Any]
      if  signupDetails?.count == 0 || signupDetails == nil
        {
          let error = jsonUnwrapped["errors"]
          print("error.....",error! )
          DispatchQueue.main.async {
             self.view.makeToast("Invalid credentials", duration: 0.5, position: .bottom)
           }
        }
        else
        {
         DispatchQueue.main.async {
           //Your code here...

          }
     }
...