You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Logic Apps从OneDrive复制文件到ADLS及无微软账号登录问题

解决方案

1. 无微软账号获取OneDrive文件内容

Logic Apps内置的OneDrive连接器依赖微软账号OAuth认证,没有账号的话可以直接用HTTP动作调用OneDrive REST API绕开登录:

  • 若目标文件是公开共享(允许匿名访问):
    • 复制文件的共享链接,对完整共享链接做URL编码
    • 添加HTTP动作,请求方法设为GET,请求URL填https://api.onedrive.com/v1.0/shares/u!{编码后的共享链接}/root/content
      • 示例:原共享链接是https://1drv.ms/u/s!Abc123,编码后变成https%3A%2F%2F1drv.ms%2Fu%2Fs%21Abc123,最终URL为https://api.onedrive.com/v1.0/shares/u!https%3A%2F%2F1drv.ms%2Fu%2Fs%21Abc123/root/content
    • 该动作返回的响应体就是文件的二进制内容,可直接用于后续步骤
  • 若文件是私有状态:OneDrive私有文件必须通过微软账号的OAuth授权访问,无账号的话没有合法的认证方式,无法获取内容

2. 将文件内容复制到ADLS

获取到文件内容后,有两种方式完成上传:

方式一:用ADLS Gen2内置连接器

  • 添加ADLS Gen2的「创建文件」动作
  • 配置存储账户名称、目标文件系统和文件路径
  • 将HTTP动作返回的响应内容填入「文件内容」字段即可完成上传

方式二:用HTTP动作调用ADLS REST API

  • 从Azure存储账户生成具有写入权限的SAS令牌
  • 添加HTTP动作,请求方法设为PUT,请求URL填https://{存储账户名}.dfs.core.windows.net/{文件系统名}/{目标文件路径}?{SAS令牌}
  • 在请求体中填入OneDrive文件的二进制内容,请求头设置Content-Type为对应文件的MIME类型(如application/pdf、image/jpeg)

内容的提问来源于stack exchange,提问作者Venu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 15:25:02