Alamofire a une méthode appelée responseJSON pour gérer les API qui renvoient JSON, mais je vais l'introduire car elle n'est pas beaucoup utilisée.
Une méthode pour stocker le json renvoyé par Api dans le dictionnaire de [Any: Any]. Puisqu'il n'est pas nécessaire de mapper json à un type, la quantité de description est considérablement réduite.
Par exemple `` { age: 90 }
Json,
```swift
["age": 90]
Il est stocké dans un dictionnaire tel que. L'inconvénient est que toutes les informations de type reviennent dans Any, vous devez donc implémenter la validation vous-même.
import Alamofire
let url = "https://swapi.dev/api/people/1/"
Alamofire.request(url).responseJSON { response in
if let json = response.result.value as? NSDictionary {
print(json)
// Ce qui suit est affiché.
// {
// "name": "Luke Skywalker",
// "height": "172",
// "mass": "77",
// "hair_color": "blond",
// "skin_color": "fair",
// "eye_color": "blue",
// "birth_year": "19BBY",
// "gender": "male",
// ...
// }
}
print(response.result)
}
JSON de retour de Star Wars Api
{
"name": "Luke Skywalker",
"height": "172",
"mass": "77",
"hair_color": "blond",
"skin_color": "fair",
"eye_color": "blue",
"birth_year": "19BBY",
"gender": "male",
...
}
Si vous souhaitez récupérer les informations, vous pouvez les traiter comme un dict normal comme suit.
json["name"]
json["hair_corol"]
Recommended Posts