0
votes

Comment vérifier que l'API de repos ne contient pas de champ d'image en réponse?

J'utilise l'API de repos WordPress dans lequel lorsqu'un utilisateur ne télécharge pas l'image de WordPress Backend, il ne contient pas ce champ et rénovez une erreur d'exception comme org.json.jsonception: Aucune valeur de la vignette lorsque je téléchargea l'image que je Je reçois la réponse sur la manière de gérer cela lorsque la réponse n'a pas de champ de vignettes xxx pré>

et réponse comme celle que je reçois: p> xxx pré>

} P>

Dans certains cas, je ne reçois pas le champ de vignette Comment gérer ce champ d'image P>

Enfin, j'ai fait comme ça: P>

                    if ( jsonResult.has("thumbnail")) {
                        imageUrl  = jsonResult.getString("thumbnail");
                        Glide.with(getApplicationContext()).load(imageUrl).into(imageView);

                    } else {
                        Toast.makeText(getApplicationContext(), "No Image Exist", Toast.LENGTH_SHORT).show();
                        Glide.with(getApplicationContext()).load(R.drawable.sikarlogo).into(imageView);
                    }


7 commentaires

Comment gérer quand je ne reçois pas le champ miniature en réponse


Vous avez déjà fait ce si (jsonresult.getstring ("thumbnail") == null)


ça ne fonctionne pas


Une condition fonctionne et obtient une exception d'erreur: pas de valeur pour la vignette


Pourrions-nous avoir une modification effectuée au niveau de l'API. Ils pourraient passer de vides dans le champ miniature si l'image n'est pas téléchargée .Coulez-vous que vous vous laissez savoir la réponse dans la case, l'image n'est pas téléchargée, êtes-vous confronté pendant la réaction?


méthode de travail merci à vous tous


@BugfreeramMohan s'il vous plaît vérifier mon édition


6 Réponses :


1
votes

Essayez cette méthode xxx

et appelez cette méthode comme celle-ci xxx

si sa null, il vous donnera une chaîne vide si vous utilisez gson

et si vous utilisez JSONOBJECT , vous pouvez vérifier avec opter comme ceci xxx


0 commentaires

1
votes

Utilisez ceci pour vérifier que la touche est disponible ou non

 if(jsonResult.hasKey("thumbnail"){
 if ( jsonResult.getString("thumbnail")== null) {
                    Toast.makeText(getApplicationContext(), "No Image Exist", Toast.LENGTH_SHORT).show();
                    Glide.with(getApplicationContext()).load(R.drawable.sikarlogo).into(imageView);
                } else {
                    imageUrl  = jsonResult.getString("thumbnail");
                    Glide.with(getApplicationContext()).load(imageUrl).into(imageView);

                }

 }


1 commentaires

si (jsonresult.has ("thumbnail"))) {imageURL = jsonresult.getstring ("thumbnail"); Glisse.avec (gettaplicationContext ()). Charge (imageURL) .Into (imagezview); } else {toast.maketext (gettaplicationContext (), "Aucune image n'existe", toast.length_short) .Show (); Glide.avec (gettaplicationContext ()). Charge (R.Drawable.sikarlog o) .Into (imageview); }



1
votes

Ils ont un moyen de vérifier que l'objet JSON a la clé ou non, pour une meilleure gestion de ce roi des cas.

jsonResult.has("thumbnail") 


0 commentaires

1
votes

Tout d'abord, vous devez vérifier si la touche "Thumbnail" existe ou non

 if (jsonResult.has("thumbnail")) {
String status = jsonResult.getString("thumbnail"));
}


1 commentaires

Si vous pensez que la réponse est utile aux autres et satisfaire votre question Veuillez accepter votre question comme réponse



1
votes

Il y a deux façons dans lesquelles vous pouvez le gérer -

à l'aide de méthode - xxx

à l'aide de ISNULL méthode - xxx

Vous pouvez également utiliser optstring méthode

retourne la valeur mappée par nom si elle existe, contraire-la si nécessaire, ou retombe si aucun cartographie de ce type n'existe.


0 commentaires

1
votes

au lieu d'écrire jsonresult.getstring ("thumbnail") == null Vous pouvez vérifier si une réponse contient une touche miniature ou non à l'aide de JSONRESULT.HAS ("Thumbnail") et faire un processus supplémentaire selon vos besoins.


0 commentaires