Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从Amazon共享链接下载文件_C#_Amazon Web Services_Amazon S3 - Fatal编程技术网

C# 从Amazon共享链接下载文件

C# 从Amazon共享链接下载文件,c#,amazon-web-services,amazon-s3,C#,Amazon Web Services,Amazon S3,我的任务是找到一种保存文件的方法,只要有一个指向某人的链接。这些文件是上传到票务系统的附件,当我使用他们的API取出票证时,我得到了一个类似下面的链接(我删除了所有私人内容,并用XXXXX替换) 如您所见,链接在1天后超时。我将两个API连接在一起,我需要能够将实际文件上传到第二个API中,而不是仅仅放置一个一天后超时的链接。我曾尝试使用Webclient downloadfileAsync,但得到的只是一个空白文件输出。我可以在浏览器中找到链接,然后右键单击,将图像另存为,这样我就知道这是可

我的任务是找到一种保存文件的方法,只要有一个指向某人的链接。这些文件是上传到票务系统的附件,当我使用他们的API取出票证时,我得到了一个类似下面的链接(我删除了所有私人内容,并用XXXXX替换)

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

using (WebClient wc = new WebClient())
{                    
    wc.DownloadFileAsync(new System.Uri(url), "image.jpg");
}
任何洞察或帮助都会很棒


提前谢谢

我能够通过不使用下载文件的异步版本来实现这一点。感谢所有帮助我解决这个问题的人

我曾经遇到过类似的问题,通过编程下载了一些东西——它在浏览器中工作,但不是从我的代码中。我发现我必须欺骗我请求的用户代理,以便服务器将我视为一个浏览器。这听起来很有希望,你是如何欺骗服务器,使其认为你是一个浏览器的?有没有可能文件是空的,因为你在异步下载完成之前查询了它?我也考虑了这种可能性,我只是在文件资源管理器中查看文件的大小。不过我给了它一分钟左右的时间。我将使用非异步运行进行测试,看看会发生什么。。。好的,我试过了。成功了!!!!