我在服务器A上有一个站点,我的文件在服务器B上。 当用户点击我的站点上的服务器B上的下载链接时,我想从服务器B下载文件到用户计算机。 我知道这很简单,我可以使用标签,但我不想向用户显示原始下载链接,因为用户可以共享此链接并下载而无需验证。 我已经在Web Forms中制作了这个,但我需要在Dot Net Core中使用它。 我使用了验证用户和验证文件下载后的处理程序,但在dot net core中我不知道该怎么做。
答案 0 :(得分:0)
在搜索1周后,我在Stephen Cleary博文上找到了解决方案。 示例代码为:
private static HttpClient Client { get; } = new HttpClient();
[HttpGet]
public async Task<FileStreamResult> Get()
{
var stream = await Client.GetStreamAsync("https://raw.githubusercontent.com/StephenClearyExamples/AsyncDynamicZip/master/README.md");
return new FileStreamResult(stream, new MediaTypeHeaderValue("text/plain"))
{
FileDownloadName = "README.md"
};
}