首页 文章

将文件上载到默认OneDrive REST以外的文件夹

提问于
浏览
0

所以我将文件放到一个驱动器上,我的URI看起来像https://apis.live.net/v5.0/me/skydrive/files/?access_token=12345

但是,如果我尝试将文件夹更改为,例如,Documents:

https://apis.live.net/v5.0/me/skydrive/files/Documents?access_token=12345

要么

https://apis.live.net/v5.0/me/skydrive/Documents/files?access_token=12345

我会得到一个HTTP 400(错误的请求错误) .

一个"workaround"可以查询onedrive的顶级目录,通过从第一个URI读取JSON响应来完成,然后为所需的文件夹取出upload_location,但是我觉得这有点长 . 从https://msdn.microsoft.com/en-us/library/dn659726.aspx中的上传文件部分,我得到的印象是我应该能够指定一个友好的文件夹路径 .

我是一个非常简单的答案,但我能够在其他地方找到,除了这里没有回答的问题http://answers.microsoft.com/en-us/onedrive/forum/sdfiles-sdupload/how-to-upload-a-file-to-a-specific-folder-created/0d57e43c-a3ec-42fc-b3b7-f15a17b2836f

谢谢

2 回答

  • 0

    根据您的示例,我认为您只需要更改Documents - > my_documents,然后场景就会像您想要的那样工作 . 这是documentation的相对摘录 .

    使用友好名称访问某些OneDrive文件夹要访问某些OneDrive文件夹,您可以使用友好名称而不是文件夹ID . 使用以下友好名称访问OneDrive UI中的这些相应文件夹:

    • USER_ID / skydrive / camera_roll表示OneDrive相机胶卷文件夹 .

    • USER_ID / skydrive / my_documents表示Documents文件夹 .

    • USER_ID / skydrive / my_photos表示Pictures文件夹 .

    • USER_ID / skydrive / public_documents表示Public文件夹 .

    在每种情况下,将USER_ID替换为我的登录用户或任何其他同意用户的用户ID . 例如,要读取Documents文件夹的属性,请使用REST API调用文件夹的ID,如下所示 .

    GET https://apis.live.net/v5.0/folder.a6b2a7e8f2515e5e.A6B2A7E8F2515E5E!110?access_token=ACCESS_TOKEN
    
  • 1

    试试以下链接中列出的API:https://dev.onedrive.com/README.htm#这些对我来说很好 .

相关问题