ホームページ  >  記事  >  運用・保守  >  API が 10 個の情報しか返さない理由

API が 10 個の情報しか返さない理由

坏嘻嘻
坏嘻嘻転載
2018-09-30 13:46:222576ブラウズ

この記事の内容は、API が 10 個の情報しか返さない理由についてです。必要な方は参考にしていただければ幸いです。

API が 10 個の情報のみを返す理由

多くの情報を返す可能性のある一部の API メソッドでは、情報をより適切に表示するために、返す必要がある情報がたとえば、使用可能なミラーをクエリすると、デフォルトでは 40 個のデータが返され、結果は 1 ページごとに 10 個に分割され、合計 4 ページの情報のみが返されます。返されるデータは一度に不完全になるため、PageSize と PageNumber を使用して制御できます。

API が 10 個の情報しか返さない理由

たとえば、画像をクエリし、杭州地域で現在利用可能な公式の公開画像をクエリすると、クエリ結果の TotalCount に 39 個の項目が表示され、すべてを取得したい場合、結果はデフォルトで 4 ページに分割されます。一度、リクエストに PageSize を追加し、39 より大きい数値に設定できます (Java SDK を使用する場合は、Request オブジェクトの setPageSize メソッドを使用して PageSize を 39 より大きい数値に設定できます)。リクエスト後、一度に39ミラー分のデータを返すことができます。

以下は Java SDK のデモです:

デフォルトでは、PageSize 値は 10 です (Java SDK が設定されていないため) PageSize 値。getPageSize を使用すると null が返され、API サーバーはデフォルトで PageSize を 10 に設定します):

コード スニペットは次のとおりです:

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());

API が 10 個の情報しか返さない理由

setPageSize を使用して PageSize 値を 50 に設定すると、すべての画像を一度に返すことができます:

コード スニペットは次のとおりです:

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());

API が 10 個の情報しか返さない理由

説明

PageSize の最大値は 100 です。クエリ結果が 100 より大きい場合は、PageNumber を使用する必要があります。次の数ページのデータを取得するには、つまりリクエストを複数回送信するには、毎回 PageNumber を 1、2、3... に設定して、すべての戻り情報を取得します。 setPageNumber() メソッドを使用して、リクエストで返されるページ数を指定できます。

以上がAPI が 10 個の情報しか返さない理由の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はaliyun.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。