使用 Microsoft Graph 访问共享到所有人的 OneDrive 工作表



我的(第一个(android应用程序运行良好,但我留下了一个非常大的问题,我现在试图解决几天了

我正在尝试使用 Graph 从另一个帐户访问我的 OneDrive 中的 Excel 文档。此文件通过共享链接向所有人声明为公开。

我正在使用下一个 GET 来检索文件

https://graph.microsoft.com/v1.0/drives/MY_DRIVE/MY_EXCEL_FILE/workbook/worksheets/Data/tables/TableData/rows

唯一的问题是该文件必须位于用户共享文件夹中,出于安全原因,我想避免这样做。

我正在使用 onedrive 进行业务,但如果这是一个问题,我可以使用个人帐户,尽管该应用程序的用户必须使用业务,因为我只向某个组织授予访问权限。

[更新九月-27 2018]

关于文件不应该在共享文件夹中,以下是我认为的原因(我希望我错了(:

  1. 在我的商业 OneDrive 帐户中,我将文件共享为公共文件并检索共享链接:

    https://MY_ORGANIZATION.sharepoint.com/:x:/g/personal/MY_USER/Eabkxa2md3JEsW0qQEuYRK4BKnnnHeJqNuspeZ6TEdkWsQ
    
  2. 我进入图形资源管理器并运行命令以检索与 excel JSON 相同的文件:

    https://graph.microsoft.com/v1.0/drives/MY_DRIVE/MY_EXCEL_FILE/workbook/worksheets/Data/tables/TableData/rows
    
  3. 图形浏览器使用HTTP 200和正确的 JSON 进行回复(如前所述,在我的 android 应用程序上也能正常工作(。

  4. 我从 Graph 资源管理器和 OneDrive 注销,并确保共享链接仍在工作。

  5. 我使用不同的帐户(同一组织(连接图形资源管理器并运行相同的命令来检索 excel JSON:

    https://graph.microsoft.com/v1.0/drives/MY_DRIVE/MY_EXCEL_FILE/workbook/worksheets/Data/tables/TableData/rows
    
  6. 这次我得到"失败 - 状态代码 404":

    {
    "error": {
    "code": "itemNotFound",
    "message": "The resource could not be found.",
    "innerError": {
    "request-id": "6d095277-fa07-40ba-bfcb-c93e96660fdc",
    "date": "2018-09-27T15:43:28"
    }
    }
    }
    
  7. 如果我使用浏览器输入共享链接,该文件将显示在共享列表中(浏览器上的"最近"下方和"发现"文件夹上方(:

    https://MY_ORGANIZATION.sharepoint.com/:x:/g/personal/MY_USER/Eabkxa2md3JEsW0qQEuYRK4BKnnnHeJqNuspeZ6TEdkWsQ
    
  8. 当我返回到 Graph 资源管理器并再次运行该命令时,我收到HTTP 200响应。

    https://graph.microsoft.com/v1.0/drives/MY_DRIVE/MY_EXCEL_FILE/workbook/worksheets/Data/tables/TableData/rows
    

我的结论是文件必须在共享文件夹中。如果我遗漏了什么,请纠正我。

ps:文件出现在第二个帐户的"共享"文件夹中后,查看OneDrive"管理访问权限",我现在看到第二个帐户的初始。这可能表示文件正式访问和共享。从他的共享文件夹中删除文件,会保留其首字母缩写和来自 Graph 资源管理器的正确响应。只有取消共享链接似乎才能取消共享。

[更新九月-27 2018 - 2]

自从马克先生的另一条评论以来,我对问题进行了一些修改,并想指出我还使用我的实际共享链接尝试了下一个链接。这在获取实际 excel 时具有类似的响应(不确定确切的错误代码(+ 其他问题。

访问共享云端硬盘项

您需要将链接发送给用户或将邀请邮件发送给用户,两者都是推荐的方式。

如果文件包含敏感信息,则需要将内容与原始文件隔离,以便符合 GDPR。目前,共享是针对项目/文件级别,而不是工作表/Excel 行级别。

您可以使用创建链接操作通过共享链接共享驱动器项

最新更新