【问题标题】:Azure Logic Apps connector for 3rd party用于第 3 方的 Azure 逻辑应用连接器
【发布时间】:2020-09-10 23:51:40
【问题描述】:
我正在尝试访问 OneDrive for business 中与我共享的一个或多个文件夹。当我浏览时,我只看到我的个人目录。如果我尝试使用自定义链接,我会得到
{
“状态”:400,
"message": "文件 id 不能是 url。",
“来源”:“api.connectorp.svc.ms”
}
App Logic Workflow
最终,我正在尝试将文件从 OneDrive for Business 复制到 Azure Blob 容器。
任何帮助将不胜感激。谢谢!
【问题讨论】:
标签:
azure
azure-logic-apps
【解决方案1】:
首先要说的是,我们不能像你提供的截图那样将文件的url输入到“获取文件内容”动作的“文件”框中.
其次,根据一些测试,我认为我们无法在逻辑应用中获取其他人与您共享的文件内容。因为如果我们使用“获取文件内容”动作,我们只能定位到存在于“Documents”中的文件的路径,而找不到存在于“与我共享”路径。并且“与我共享”选项卡中的文件只存在于其他onedrive中,但不存在于您的onedrive中。
如果您仍想获取该文件,这里有一个解决方法(没有逻辑应用程序)供您参考(我不确定您是否可以成功实施)。如果您可以在“与我共享”选项卡中看到该文件,如下图所示:
您可以使用 microsoft graph api 来获取文件内容。您需要先请求图形api:https://graph.microsoft.com/v1.0/me/drive/sharedWithMe,并在api的响应中获取id和driveId。然后请求另一个图形api: https://graph.microsoft.com/v1.0/me/drives/{driveId}/items/{id}/content 和id 和driveId 以获取文件内容。您需要在代码中实现这些步骤。
如果您在页面的“与我共享”标签中看不到文件,您可能无法从上面的第一个图形 api 中得到任何响应。而且可能你用graph api也实现不了。