A Way to get all list values for a CollectionResponse?
@jussihi 已经在做这个了。
开始于 2024年10月8日。
评估
这个 Issue 还没有评估数据。
描述
Is your feature request related to a problem? Please describe the problem.
Is there already a way to get all items for a CollectionResponse? Currently the API/SDK returns only a page of results, and then we need to fetch more by using odata_next_link.
Is there a way to get all results in a single request?
I have made a helper function which I use, is this the best way;
# Takes in any CollectionResponse
async def get_complete_paginated_list(
request_builder_func: Any,
request_configuration: Optional[Any] = None
) -> List[Any]:
ret: List[Any] = []
collection_response: Any = await request_builder_func.get()
# Nothing to return here
if collection_response is None or collection_response.value is None:
return ret
def add_response_items(response: Optional[Any], items: List[Any]) -> None:
if response is not None and response.value is not None:
for item in response.value:
items.append(item)
# Add initial results
add_response_items(collection_response, ret)
# Iterate pages
while collection_response is not None and collection_response.odata_next_link is not None:
collection_response: Optional[Any] = await request_builder_func.with_url(collection_response.odata_next_link).get(request_configuration = request_configuration)
if collection_response is not None:
add_response_items(collection_response, ret)
return ret
It can then be used like this;
mailfolders: List[MailFolder] = await get_complete_paginated_list(graph_client.users.by_user_id(user_id).mail_folders)
Describe the solution you'd like.
something like what I've made
Additional context?
No response
- 主要语言
- Python
- 星标
- 630
- 派生
- 96
- 平均合并
- 15 小时 20 分钟
- 30 天内合并 PR
- 3
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
microsoftgraph/msgraph-sdk-python 的其他 Issue
-
status:waiting-for-triage type:bug
难度 1/5 1 小时以内 新手友好度 90/100
microsoftgraph/msgraph-sdk-python#1570 ·
-
status:waiting-for-triage type:bug
难度 2/5 1-3 小时 新手友好度 75/100
microsoftgraph/msgraph-sdk-python#1563 ·
-
Needs: Attention :wave: type:bug
难度 2/5 1-3 小时 新手友好度 62/100
microsoftgraph/msgraph-sdk-python#1287 · 2 条评论 · 1 个 reaction ·
-
status:waiting-for-triage type:bug
难度 3/5 1-2 天 新手友好度 52/100
microsoftgraph/msgraph-sdk-python#1578 ·
-
status:waiting-for-triage
难度 5/5 一周以上 新手友好度 25/100
microsoftgraph/msgraph-sdk-python#1557 ·
查看 microsoftgraph/msgraph-sdk-python 的全部 Issue
相似的 Issue
-
Add: hunch 未关闭
难度 2/5 1-3 小时 新手友好度 74/100
AbdelStark/awesome-typesafe#104 ·
-
enhancement
难度 2/5 1-3 小时 新手友好度 72/100
-
难度 2/5 1-3 小时 新手友好度 68/100
DiamondLightSource/dodal#2211 ·
-
难度 2/5 1-3 小时 新手友好度 88/100
openml/openml-python#1749 ·
-
难度 2/5 1-3 小时 新手友好度 88/100
sipyourdrink-ltd/bernstein#6191 ·