我正在Visual Studio中播放Microsoft.Live命名空间。将文件上传到Onedrive对我们来说没有任何问题。但我们似乎无法制作上传的文件ViewOnly
。在MSDN页面上(见上文),我似乎无法找到有关此内容的任何信息。我必须如何(什么方法)以只读方式上传文件?
上传数据的当前代码:
LiveOperationResult operationResult;
var liveClient = await getLiveConnectClient();
// upload
operationResult = await liveClient.UploadAsync(folderPath, fileName, stream, OverwriteOption.Overwrite);
dynamic resultUpload = JsonConvert.DeserializeObject(operationResult.RawResult);
此代码仍在上传的文件中编辑。我想要的是创建一个带选项的链接"仅查看"。
任何想法,建议?
答案 0 :(得分:1)
我假设您指的是文件系统上的只读位,而LiveSDK不支持文件的只读选项。
答案 1 :(得分: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?....."
}
在浏览器中输入显示该文件的链接,但已禁用更改该文件的功能。我希望这对某人有用。
答案 2 :(得分:0)
使用一个驱动器上传文件时,上传者始终可以访问该文件。您无法将其设置为只读,或仅针对该用户进行查看。
可能的解决方法是为文件上传设置一个单独的帐户,该帐户上传到已设置了仅查看权限的共享文件夹。然后用户将查看"上传的文件是来自其他帐户的非上传用户,阻止了文件访问修改。