Элементы папки Box Api GET со смещением и лимитом не работают - PullRequest
0 голосов
/ 19 декабря 2018

Я пытаюсь получить список элементов в папке в API Box.com (и использовать смещение / лимит для подкачки).

Согласно документам , я должен сделать следующее:

curl https://api.box.com/2.0/folders/FOLDER_ID/items?limit=2&offset=0 \
-H "Authorization: Bearer ACCESS_TOKEN"

Что кажется очень простым.И я полагаю, что я следую этим инструкциям к письму, как показано моим кодом ниже:

        var boxUrl = "https://api.box.com/2.0/folders/" + folderId + "/items";
        var requestParams = new NameValueCollection();
        requestParams.Add("limit", "10");
        requestParams.Add("offset", "50");
        var array = (from key in requestParams.AllKeys
                     from value in requestParams.GetValues(key)
                     select string.Format("{0}={1}", key, value))
            .ToArray();
        var queryString = string.Join("&", array);
        var url = boxUrl + "?" + queryString;
        WebRequest request = WebRequest.Create(boxEmailUrl);
        request.Method = "GET";
        request.ContentType = "application/x-www-form-urlencoded";
        request.Headers.Add("Authorization", "Bearer " + AccessToken);
        WebResponse response = request.GetResponse();
        Stream dataStream = response.GetResponseStream();
        StreamReader reader = new StreamReader(dataStream);
        string responseFromServer = reader.ReadToEnd();

Когда я отлаживаю этот код, значение url равно:

https://api.box.com/2.0/folders/347534773457/items?limit=10&offset=50

И это кажется абсолютно правильным.Но ответ, который я получаю, дает мне первые 100 записей вместо записей 50-60.Фактически, метаданные, которые я получаю от этого вызова API, показывают "offset":0, "limit":100, как будто я вообще не предоставлял никаких параметров limit или offset.Вот небольшой фрагмент этого:

{"total_count":101,"entries":[
{"type":"folder","id":"493... 
...917","sequence_id":"0","etag":"0","name":"xxxxxxx"}],
"offset":0,"limit":100,"order": [{"by":"type", "direction":"ASC"},{"by":"name","direction":"ASC"}]}

Может ли это быть ошибкой в ​​API Box.com?Или я что-то не так делаю в своем вызове API?

...