gpt4 book ai didi

c# - 通过 Azure 函数显示 Azure Blob 存储中的文件

转载 作者:行者123 更新时间:2023-12-03 03:59:09 25 4
gpt4 key购买 nike

我正在尝试通过 Azure 函数从 Azure Blob 存储获取文件并在浏览器中显示它们。当我导航到该网址时,我可以设法下载这些文件,但无法在浏览器中将它们显示为静态文件/图像。

我只想在浏览器中显示它而不是下载。

我尝试了一些 sdk 命令,但没有成功。这是我尝试过的:

public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", Route = null)] HttpRequest req,
ILogger log)
{
var cloudStorageAccount =
CloudStorageAccount.Parse(AzureStorageConnectionString);

var cloudBlobClient =
cloudStorageAccount.CreateCloudBlobClient();

var cloudBlobContainer =
cloudBlobClient.GetContainerReference(
AzureStorageFilePath);

await cloudBlobContainer.CreateIfNotExistsAsync();

var blobName =
req.Query["name"];

var cloudBlockBlob =
cloudBlobContainer.GetBlockBlobReference(blobName);

var ms = new MemoryStream();

await cloudBlockBlob.DownloadToStreamAsync(ms);

return new FileContentResult(ms.ToArray(), cloudBlockBlob.Properties.ContentType);
}

任何想法将不胜感激。谢谢!

最佳答案

请检查您要显示的文件的内容类型,如果内容类型是“application/octet-stream”,则会导致文件下载。默认情况下,如果未提供内容类型,azure sdk 将其设置为“application/octet-stream”,这会导致文件下载,为文件 ex :- 对于图像设置正确的内容类型应为“image/jpeg”。希望这可以解决问题。

关于c# - 通过 Azure 函数显示 Azure Blob 存储中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63167976/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com