J'utilise Alamofire. Par conséquent, dans la réponse, il y a des codes de statut. Devrais-je vérifier et gérer chaque cas de code d'état disponible ou que dois-je faire pour les gérer?
switch response.response?.statusCode {
case 201:
print("created user")
case 400:
print("Bad request")
// ...........
default:
print(response.result.value)
}
5 Réponses :
Il n'y a pas besoin de vérifier pour chaque code d'état. Ce que je ferais normalement, c'est de vérifier si la demande est réussie ou échoue à l'aide du modèle ci-dessous.
Alamofire.request(request).responseJSON { (response) in
switch response.result {
case .success:
if let httpURLResponse = response.response {
if httpURLResponse.statusCode == 200 {
// Success
} else {
// Response Unsuccessful
}
} else {
// Response Unsuccessful
}
case .failure:
// Request Failed
}
}
Oui mais je veux savoir quelle erreur est lancée pour que je puisse les montrer à l'utilisateur. Je construis mon propre API
Vous pouvez vérifier que le code de réponse est compris entre 200-299 inclus. Cela vous dira que la demande a été réussie. Tout autre code est, échec. P>
Si vous souhaitez afficher des erreurs spécifiques, utilisez des codes de réponse. Ceci est une liste de standard Codes de réponse . Si vous avez le contrôle sur API, tenez-vous à des codes standard. P>
Oui mais je veux savoir quelle erreur est lancée pour que je puisse les montrer à l'utilisateur. Je construis mon propre API
httpResponse = response as! HTTPURLResponse
print(httpResponse.statusCode) // this will shown the status code so you can easily get which type of error code is generate
if(httpResponse.statusCode == 200)
{
//Success
}
else
{
//Failure
}
You can check the types of error
https://en.wikipedia.org/wiki/List_of_HTTP_status_codes
Oui mais je veux savoir quelle erreur est lancée pour que je puisse les montrer à l'utilisateur. Je construis mon propre API
Cela vous aidera en.wikipedia.org/wiki/list_of_http_status_codes
Oui, mais par exemple, si je prends le code 400 qui est une mauvaise demande et 401 qui est non autorisé, je veux suivre chaque cas et les montrer à l'utilisateur. Pour cela, je dois hCeck chaque code de statut disponible ou non?
Vous devez définir l'utilisation de l'API pour un code d'état différent
que veux-tu dire?
Voir le point suivant pour obtenir le code d'état de httpurlreesponse code>, j'espère que cela vous aide. if let httpResponse = response as? HTTPURLResponse {
print("error \(httpResponse.statusCode)")
if httpResponse.statusCode == 200{
//Success
}else{
//Failed
}
}else {
//Failed
}
Oui mais je veux savoir quelle erreur est lancée pour que je puisse les montrer à l'utilisateur. Je construis mon propre API
Vous n'avez normalement pas besoin de connaître le code d'erreur spécifique, de savoir si la demande a été réussie ou non. Mais je pouvais voir pour un outil de développeur ou quelque chose de similaire que vous voudrez peut-être afficher le code actuel.
Quelque chose comme ça serait bon, il n'est pas vraiment nécessaire de vérifier le cas de tout code de statut possible. p>