这可能是一个基本问题,但很常见,因此将来可能对其他人有所帮助。我使用 HTTParty 向 API 发出 get 请求,该 API 返回一些信息,如下所示:
{
datapath: "blah-blah.blah.blah",
success: true,
info: {
row_limit: 500,
total_results: 2700,
total_pages: 6,
current_page: 1
},
result: [
{name: something, age: 1},
{name: something, age: 2},
{name: something, age: 3},
{name: something, age: 4},
{name: something, age: 5},
......
]
}
我想要一个所有名字的列表,所以我有这样的东西:
response = HTTParty.get('blah-blah.blah.blah')
names = response.map { |entry| entry["name"] }
使用这种方法,我只在第一页上获得名称,也就是前 500 个,但我想要 2700 个条目中的所有名称。我该怎么做?
事实上,一个快速的谷歌将我带到了这个页面 https://app.enigma.io/api#data 它告诉我有问题的参数是限制,最大值是 500。 因此,看起来您无法一次点击获取所有行的数据。
如果您真的需要一次所有行的数据(实际上也许您不需要),那么您可以通过 limit=500 并继续将页面增加 1,并在您最后合并结果以获得所有行。