我正在尝试获取给定文件夹的协作。在github上给出的Box sdk中,函数是public Collaboration GetCollaboration(string collaborationId,IEnumerable fields = null)。我的问题是如何获得协作ID ???在阅读[link] Is there any way to get all files and folder in box without knowing their id?中的评论后,我认为应该给出给定文件夹的ID,但是当我提供时,我得到异常“404 not found”。虽然我的文件夹ID“867049500”确实启用了协作。请参阅下面的图片
答案 0 :(得分:3)
官方Windows SDK提供了a method,它将获取已知文件夹的协作:
var client = new BoxClient(...);
var collabs = await client.FoldersManager.GetCollaborationsAsync(folderId);
(2014年8月29日编辑指向官方SDK)
答案 1 :(得分:0)
除此以外,我还可以为此寻找替代方案:
var boxManager = new BoxApi.V2.BoxManager(userToken);
从上面的代码中获得boxManager,然后进一步:
var testFolder = boxManager.GetFolder(FolderID);
从上面的代码中,您将获得文件夹,然后进一步将其传递,如下所示:
CollaborationCollection sampleCollabs = boxManager.GetCollaborations(testFolder, false, null);
对我来说已经解决了,所以我要分享解决方案。
答案 2 :(得分:0)
使用Python,以下内容可以获取协作属性。
步骤1:使用get_collaborations()方法返回协作集合
collaborations = client.folder(folder_id='Your_target_folder_id').get_collaborations()
第2步:然后遍历协作以获取特定的协作ID
for collab in collaborations:
collaboration_id = collab.id