Le contenu de cet article explique la raison pour laquelle l'API ne renvoie que 10 informations. Elle a une certaine valeur de référence. J'espère que cela vous sera utile.
La raison pour laquelle l'API ne renvoie que 10 informations
Dans certaines méthodes API qui peuvent renvoyer beaucoup d'informations, afin de mieux afficher les informations, les informations qui doivent être renvoyées est généralement paginé. Par exemple, si vous interrogez les miroirs disponibles, 40 éléments de données seront renvoyés. Par défaut, les résultats seront divisés en 10 éléments par page, avec un total de 4 pages d'informations. à la fois, les données renvoyées seront donc incomplètes. Vous pouvez utiliser PageSize lorsque vous l'utilisez et PageNumber pour contrôler. La description de ces deux paramètres est la suivante :
. Par exemple, interrogez l'image et interrogez les images publiques officielles actuellement disponibles dans la région de Hangzhou. Le TotalCount dans le résultat de la requête affiche 39 éléments, le résultat sera alors divisé en quatre pages par défaut. une fois, vous pouvez ajouter PageSize à la requête et la définir sur un nombre supérieur à 39 (si vous utilisez le SDK Java, vous pouvez définir PageSize sur un nombre supérieur à 39 via la méthode setPageSize dans l'objet Request. ), de sorte que le les données de 39 miroirs peuvent être renvoyées en même temps après la demande.
Ce qui suit est une démonstration du SDK Java :
Par défaut, la valeur PageSize est 10 (car si le SDK Java ne définit pas la valeur PageSize, l'utilisation de getPageSize renverra null et le serveur API définira PageSize sur 10 par défaut) :
L'extrait de code est le suivant :
DescribeImagesRequest describe = new DescribeImagesRequest(); //describe.setPageSize(50);//默认情况下不设置的话PageSize就是10 describe.setRegionId("cn-hangzhou"); describe.setImageOwnerAlias("system"); System.out.println("当前请求的PageSize大小:"+describe.getPageSize()); DescribeImagesResponse response = client.getAcsResponse(describe); System.out.println("镜像总数:"+response.getTotalCount()); System.out.println("返回的响应中镜像数量="+response.getImages().size());
Après avoir utilisé setPageSize pour définir la valeur PageSize sur 50, vous pouvez renvoyer toutes les images en même temps :
L'extrait de code est le suivant :
DescribeImagesRequest describe = new DescribeImagesRequest(); describe.setPageSize(50);//这里在Request中通过setPageSize()方法将每页显示的数量设置为50 describe.setRegionId("cn-hangzhou"); describe.setImageOwnerAlias("system"); System.out.println("当前请求的PageSize大小:"+describe.getPageSize()); try { DescribeImagesResponse response = client.getAcsResponse(describe); System.out.println("镜像总数:"+response.getTotalCount()); System.out.println("返回的响应中镜像数量="+response.getImages().size());
Explication
La valeur maximale de PageSize est de 100. Si le résultat de la requête est supérieur à 100, vous vous devez utiliser PageNumber pour obtenir les données des pages suivantes, c'est-à-dire soumettre la demande plusieurs fois, en définissant PageNumber sur 1, 2, 3... à chaque fois pour obtenir toutes les informations de retour. Vous pouvez spécifier le nombre de pages à renvoyer dans la requête via la méthode setPageNumber().
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!