Amadeus API 中 page[limit] 参数的正确使用方式

4次阅读

Amadeus API 中 page[limit] 参数的正确使用方式

在 amadeus python sdk 中,分页参数 `page[limit]` 并非以独立关键字传入,而是需通过字典形式嵌套在 `page` 参数中,如 `page={‘limit’: 5}`,方可生效。

Amadeus 的 Points of Interest(POI)API 支持分页控制,其中 page[limit] 是官方文档中声明的查询参数,用于限制单页返回结果数量(默认为 10)。但在 python SDK 中,该参数不能直接写成 page_limit=5 或 page[limit]=5(后者语法非法),也不能用方括号作为关键字名(Python 不支持)。

✅ 正确用法是将分页配置封装为一个字典,并作为 page 参数传入:

response = amadeus.reference_data.locations.points_of_interest.by_square.get(     north=41.42,     west=2.11,     south=41.347463,     east=2.228208,     categories=['SIGHTS', 'NIGHTLIFE'],     page={'limit': 5}  # ✅ 正确:page 接收 dict,内含 'limit' 键 )

你还可以同时指定起始偏移量(offset),实现精准分页:

# 获取第 2 页(每页 5 条),即跳过前 5 条 page={'offset': 5, 'limit': 5}

⚠️ 注意事项:

  • page 必须是 dict 类型,键名严格为 ‘limit’ 和/或 ‘offset’(小写,无空格);
  • 若传入无效 key(如 ‘page_limit’)或类型错误(如 page=5),SDK 将静默忽略,仍使用默认分页行为;
  • 建议始终检查响应中的 meta.count 和 meta.offset 字段,验证分页是否生效;
  • 所有 POI 相关端点(如 by_square、by_circle、search)均遵循相同的 page 字典约定。

总结:Amadeus Python SDK 将 restful API 中的 page[limit] 这类带方括号的参数映射为嵌套字典结构,开发者需主动构造 page={‘limit’: N} —— 这是 SDK 的统一设计模式,适用于所有支持分页的端点。

text=ZqhQzanResources