获取共享 link 到文件 Dropbox API v2.0 c#

Get shared link to a file Dropbox API v2.0 c#

我正在使用 Dropbox.Net API v2.0 将文档上传到 Dropbox:

private async Task Upload(DropboxClient dbx, string localPath, string remotePath)
    {
        using (var fileStream = File.Open(localPath, FileMode.Open))
        {
            var s = await dbx.Files.UploadAsync(remotePath, body: fileStream);
        }
    }

如何获取已上传文档的共享 link?

我试过了:

await dbx.Sharing.GetSharedLinkFileAsync(remotePath);

但出现以下错误:

<Message>An error has occurred.</Message>
<ExceptionMessage>shared_link_not_found/.</ExceptionMessage>

我在想什么,但不确定是什么,有什么想法吗?

我找到了答案:

var result = await  dbx.Sharing.CreateSharedLinkWithSettingsAsync(remotePath);
var url = result.Url;

效果很好。

var link = dbx.Sharing.ListSharedLinksAsync(FolderName + "/" + UploadFileName);
if (link.Result.Links.Count == 0)
{
 var result = 
        dbx.Sharing.CreateSharedLinkWithSettingsAsync(FolderName+"/"+UploadFileName);
 string url = result.Result.Url;
}
 else
{
 string url = link.Result.Links[0].Url;
 URL = url;
}

这样您就可以检查现有链接并在需要时添加新链接。