0

我正在尝试从我的应用程序中编写一个寻呼机,该寻呼机需要获取专辑总数。我可以从 orkut 中获取所有专辑,但它会减慢传输速度,因为我只需要总数而不是专辑中的数据。

opensocial v9 是否有可以检查观众有多少专辑的功能?或者我可能只获取专辑的 ID,这样我可以最大限度地减少传输时间

4

1 回答 1

0

Opensocial 通过为开发人员提供向 DataRequests(和其他 *Requests)添加参数的能力来支持startIndex分页count。如果开发人员不提供count参数,则其默认值为20,并且正如您猜测的那样,当未提供startIndex参数时,它默认为0(zero).

你得到的回应必须是这样的:

{
  "startIndex": 0,
  "totalResults": 120,
  "entry": [
    ....
  ]
}

这里,totalResults是专辑总数,而不是返回的专辑数。您可以使用它totalResults来计算您的页数并准备您的分页。

更新:
在制作 MediaItemRequests 时可能使用了 opensocial.DataRequest.MediaItemsField.MAX 字段,但是应该使用专辑列表 AlbumRequest。您可以限制在此管道中获取的专辑数量

<os:AlbumsRequest key='myalbums' userid="@viewer" groupid="@self" />

通过添加count参数,例如:

<os:AlbumsRequest key='myalbums' userid="@viewer" groupid="@self" count="5"/>

此专辑请求最多提取 5 个查看者的专辑。生成的 json 将是:

{
  "startIndex": 0,
  "totalResults": ....here total number of albums....,
  "entry": [
    ....here at max 5 albums....
  ]
}

在这里您可以通过调用获取专辑总数myalbums.totalResults

于 2010-10-20T10:31:21.867 回答