首页 文章

将ViewOnly文件上载到OneDrive

提问于
浏览
1

我正在Visual Studio中播放Microsoft.Live命名空间 . 将文件上传到Onedrive对我们来说没有任何问题 . 但我们似乎无法使上传的文件 ViewOnly . 在MSDN页面上(见上文),我似乎无法找到任何有关此信息 . 我必须如何(什么方法)上传文件为readonly?

上传数据的当前代码:

LiveOperationResult operationResult;
var liveClient = await getLiveConnectClient();

// upload
operationResult = await liveClient.UploadAsync(folderPath, fileName, stream, OverwriteOption.Overwrite);
dynamic resultUpload = JsonConvert.DeserializeObject(operationResult.RawResult);

此代码仍在上传的文件中编辑 . 我想要的是创建一个带有“仅查看”选项的链接 .

有什么想法,建议吗?

3 回答

  • 0

    我假设您指的是文件系统上的只读位,而LiveSDK不支持文件的只读选项 .

  • 0

    经过一些(绝望的)搜索,我找到了答案

    在下面的msdn-page File and folder properties上有一个关于如何链接到文件的参考 . 当您希望实现 view-only reference 时,您必须执行以下URI的Webrequest

    https://apis.live.net/v5.0/FILEID/shared_read_link?access_token=ACCESS_TOKEN
    
    FileID & AccessToken can be easily found using the SDK.
    

    webrequest的结果是JSON数据,如下所示:

    {
       "link": "https://onedrive.live.com/redir.aspx?....."
    }
    

    在浏览器中输入链接显示该文件,但已禁用更改它的功能 . 我希望这对某人有用 .

  • 1

    使用一个驱动器上载文件时,上传者始终可以访问该文件 . 您不能将其设置为只读,或仅为该用户设置查看 .

    可能的解决方法是为文件上传设置一个单独的帐户,该帐户上传到已设置了仅查看权限的共享文件夹 . 然后,用户将从另一个帐户“查看”上载的文件作为非上载用户,从而阻止文件访问修改 .

相关问题