Onedrive API读取给定链接

时间:2017-02-03 16:18:46

标签: onedrive

我想创建使用Onedrive API的Microsoft Cognitive Services项目。

场景是:用户将给我一个Onedrive链接,我的API将转到该文件夹​​上的文件。

有可能吗?

如果是这样,我在哪里可以找到更多关于它的文档?

1 个答案:

答案 0 :(得分:0)

您希望使用OneDrive Link的编码版本来利用shares API。

  

GET ../ v1.0 / shares / {sharingTokenOrUrl}

在您的案例中,sharingTokenOrUrl是以下列方式编码的网址:

  1. 首先,使用base64编码URL。
  2. 将base64编码结果转换为unpadded base64url格式 从值的末尾删除=字符,替换/用_ 和+ - - 。)
  3. 追加你!成为字符串的开头。
  4. 例如,要在C#中编码URL:

    string sharingUrl = "https://onedrive.live.com/redir?resid=1231244193912!12&authKey=1201919!12921!1";
    string base64Value = System.Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(sharingUrl));
    string encodedUrl = "u!" + base64Value.TrimEnd('=').Replace('/','_').Replace('+','-');
    

    查看this documentation以获取shares端点的完整说明。