我试图从特定组中获取所有消息.我得到了json反馈.唯一的问题是,它只返回20条消息.这是默认设置还是其他设置.在执行请求时,有什么方法可以指定我是否需要所有消息,默认情况下只需20条甚至是在开始日期和结束日期之间发布的消息?
我的RestApi电话是:
https://www.yammer.com/api/v1/messages/in_group/[id].json
来自Yammer开发者文档<
自动填充:10秒内有10个请求.
消息:30秒内有10个请求.
通知:30秒内有10个请求.
所有其他资源:10秒内10次请求.
这些限制是独立的,例如在相同的30秒时间内,您可以进行10次消息呼叫和10次通知呼叫.具体的费率限制可能会有所变化,但遵循以下指导原则可确保您的应用不被阻止.>>
我已经尝试使用limit作为参数来更改超过20的消息数.但它似乎没有工作?
这个问题是因为速率限制.如果没有,问题是什么?
消息 - 查看消息
终点:
1)用户的所有公共消息(其访问令牌用于进行API调用,此后称为当前用户)Yammer网络.对应于Yammer Web界面中的"所有"对话.
GET https://www.yammer.com/api/v1/messages.json
Run Code Online (Sandbox Code Playgroud)
2)用户的订阅源,基于他们在"关注"和"顶部"对话之间做出的选择.
GET https://www.yammer.com/api/v1/messages/my_feed.json
Run Code Online (Sandbox Code Playgroud)
3)对应于"热门"对话的用户算法提要,这是绝大多数用户将在Yammer Web界面中看到的.
GET https://www.yammer.com/api/v1/messages/algo.json
Run Code Online (Sandbox Code Playgroud)
4)"关注"馈送,其是涉及用户正在关注的人,组和主题的对话.
GET https://www.yammer.com/api/v1/messages/following.json
Run Code Online (Sandbox Code Playgroud)
5)用户发送的所有消息./api/v1/messages/from_user/logged-in_user_id.format的别名.
GET https://www.yammer.com/api/v1/messages/sent.json
Run Code Online (Sandbox Code Playgroud)
6)用户收到的私人消息.
GET https://www.yammer.com/api/v1/messages/private.json
Run Code Online (Sandbox Code Playgroud)
7)用户收到的所有消息.
GET https://www.yammer.com/api/v1/messages/received.json
Run Code Online (Sandbox Code Playgroud)
参数:
消息API端点返回类似的结构并支持以下查询参数:
older_than - 返回早于指定为数字字符串的消息ID的消息.这对于分页消息很有用.例如,如果您当前正在查看20条消息,而最早的消息是2912号,则可以在您的请求中附加"?older_than = 2912",以便在您看到的消息之前获取20条消息.
newer_than - 返回比指定为数字字符串的消息ID更新的消息.轮询新邮件时应使用此选项.如果你正在寻找的信息,并返回最近的消息是3516,你可以用参数"?newer_than = 3516"的要求,以确保你没有得到已经在页面上邮件的重复副本.
threaded = [true | 扩展] - threaded = true只返回每个线程中的第一条消息.此参数适用于显示折叠消息线程的应用程序.threaded = extended将按照最近活动的顺序返回线程启动程序消息以及两条最新消息,因为它们是在Yammer Web界面的默认视图中查看的.
limit - 仅返回指定数量的消息.适用于threaded = true和threaded = extended.
注意到你可以在你的GET请求上设置的限制参数 - 所以基于这个文档,如果它是正确的(我不是Yammer开发人员,但我确实使用它)你应该能够做到
https://www.yammer.com/api/v1/messages.json?limit=50
Run Code Online (Sandbox Code Playgroud)
这是在理论上,而且可通过文档阅读上有一个部分搜索有
page - 每个页面只返回20种类型的结果,但每次查询都会返回一个总计数.page = 1(默认值)将返回项目1-20,page = 2将返回项目21-30等.
其中告诉我他们只返回20个结果.
UPDATE
使用后测试它https://www.yammer.com/api/v1/messages.json?limit=50并且它没有返回50消息但是https://www.yammer.com/api/v1/messages.json?limit=5只会返回5消息我会说Yammer限制消息的数量20也是在读完文档之后我读了一下
例如,如果您当前正在查看20封邮件,而最早的邮件是2912号邮件,则可以在您的请求中附加"?older_than = 2912",以便在您看到的邮件之前获取20封邮件
这告诉我他们最多只返回20个.所以我认为你一次只能处理20条消息.
希望这可以帮助.