ios - Graphql - iOS 中的数据获取
问题描述
任何人请帮我从下面的 API 响应中获取“数据”的值。这是 GraphQL API 响应的一种
["data": {
signin = {
result = {
firstName = evol;
lastName = adc;
profileImage = "http:/xxx.com/public/static/default.jpg";
status = "<null>";
token = "eyxxx";
};
};
}]
解决方案
您可以从 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...
}
}
推荐阅读
- python - nsepy 给出 TypeError: 'datetime.date' object is not callable 如果我尝试多次获取数据
- c++ - 排序后指针指向向量中的对象(C++)
- networking - Why ip is not part of 115.64.4.0/22
- android - 如何阻止android中的夜间模式改变颜色?
- vb.net - 直接设置字体与使用 FontFamily
- slack - 如何搜索包含用户名的特定字符串?
- ansible - 是否有 ios_config 模块用于回答 ansible 中的提示?
- error-handling - Parabola 和 Diffbot 上的错误 500 - 不允许私有 IP
- r - 使用 shapefile 和传单调用数据的闪亮应用程序问题
- reactjs - 如何在 react-native 功能组件中将获取数据设置为文本字段