首页 > 解决方案 > .NET WEB API 使用 FTP 在新的浏览器选项卡中打开图像文件

问题描述

我有一个使用 FTP 协议从其他站点下载图像的功能。但是现在我想将它打开到一个新标签中,而不是下载它。这是我下载它的 C# 代码。谢谢阅读

byte[] byteFTP = ftpclass.ReadFTPFile(results, ConfigCache.HostURL, ConfigCache.UserName, ConfigCache.Password);
if (byteFTP != null)
{
    HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK);
    var dataStream = new MemoryStream(byteFTP);
    response.Content = new StreamContent(dataStream);
    response.Content.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("attachment");
    response.Content.Headers.ContentDisposition.FileName = results;
    response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
    response.Content.Headers.ContentLength = dataStream.Length;
    return response;
}

标签: c#asp.netangularjsasp.net-web-apiftp

解决方案


要允许在新选项卡中查看文件,您应该将Content-Disposition标头设置为"inline". 但是,根据文件类型,这仍然可以由浏览器决定。内联只是意味着将尝试显示它,然后再返回下载


推荐阅读