feishu2md
feishu2md copied to clipboard
[Bug]: GetWikiNodeList获取知识空间子节点列表时死循环
问题描述
获取知识空间子节点列表时,没有传入上次查询的PageToken,导致死循环
飞书文档链接
/
期望的 markdown 格式
解决方案:以下修改可以解决此bug
func (c *Client) GetWikiNodeList(ctx context.Context, spaceID string, parentNodeToken *string) ([]*lark.GetWikiNodeListRespItem, error) {
resp, _, err := c.larkClient.Drive.GetWikiNodeList(ctx, &lark.GetWikiNodeListReq{
SpaceID: spaceID,
PageSize: nil,
PageToken: nil,
ParentNodeToken: parentNodeToken,
})
if err != nil {
return nil, err
}
flag := resp.HasMore
nodes := resp.Items
for flag {
resp, _, err := c.larkClient.Drive.GetWikiNodeList(ctx, &lark.GetWikiNodeListReq{
SpaceID: spaceID,
PageSize: nil,
PageToken: &resp.PageToken,
ParentNodeToken: parentNodeToken,
})
if err != nil {
return nil, err
}
nodes = append(nodes, resp.Items...)
flag = resp.HasMore
}
return nodes, nil
}
(可选)更多信息
No response