从Amazon共享链接下载文件

时间:2018-08-09 15:35:29

标签: c# amazon-web-services amazon-s3

我的任务是找到一种方法来保存文件,并提供指向某人的亚马逊存储桶的链接。这些文件是上传到票务系统的附件,当我使用其API将票证拉出时,会得到一个类似于下面的链接(我删除了所有私人内容并替换为XXXXX)

https://s3.amazonaws.com/cdn.XXXXXXX.com/data/helpdesk/attachments/production/36012348362/original/1.jpeg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=XXXXXXXXXXXXXXXXXFus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20180808T205357Z&X-Amz-Expires=86400&X-Amz-Signature=XXXXXXXXXXXXXX-Amz-SignedHeaders=Host

如您所见,链接在1天后超时。我将2个API连接在一起,并且我需要能够将实际文件上传到第二个API中,而不仅仅是放置一天后超时的链接。我试图使用Webclient downloadfileAsync,但我得到的只是空白文件输出。我可以转到浏览器中的链接,然后单击鼠标右键,将图像另存为,因此我知道它是可能的,但是我在编程上没有任何运气。以下是我当前用来尝试下载的代码片段。

using (WebClient wc = new WebClient())
{                    
    wc.DownloadFileAsync(new System.Uri(url), "image.jpg");
}

任何见解或帮助都会很棒。

谢谢!

1 个答案:

答案 0 :(得分:0)

我能够通过不使用DownloadFile的异步版本来使其工作。感谢所有帮助我解决此问题的人。