![Amadeus API 中 page[limit] 参数的正确使用方式](https://img.php.cn/upload/article/001/246/273/176977706658549.jpg)
在 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 的统一设计模式,适用于所有支持分页的端点。










