c# – 在Azure功能应用程序blobtrigger中设置blob的内容类型
发布时间:2020-12-15 08:35:28 所属栏目:百科 来源:网络整理
导读:我正在尝试调整上传到我的容器的图像的大小,以便为我的网站创建缩略图和我的图像的各种其他版本. 我上传的图像必须更正内容类型“image / jpeg”,但是当我使用下面的代码创建它们的新版本时,它变成“application / octet-stream”. 我在这里失踪了什么? usi
我正在尝试调整上传到我的容器的图像的大小,以便为我的网站创建缩略图和我的图像的各种其他版本.
我上传的图像必须更正内容类型“image / jpeg”,但是当我使用下面的代码创建它们的新版本时,它变成“application / octet-stream”. 我在这里失踪了什么? using ImageResizer; using ImageResizer.ExtensionMethods; public static void Run(Stream myBlob,string blobname,string blobextension,Stream outputBlob,TraceWriter log) { log.Info($"C# Blob trigger function Processed blobn Name:{blobname} n Size: {myBlob.Length} Bytes"); var instructions = new Instructions { Width = 570,Mode = FitMode.Crop,Scale = ScaleMode.Both,}; ImageBuilder.Current.Build(new ImageJob(myBlob,outputBlob,instructions)); } 编辑:解决方案. #r "Microsoft.WindowsAzure.Storage" using ImageResizer; using ImageResizer.ExtensionMethods; using Microsoft.WindowsAzure.Storage.Blob; public static void Run(Stream myBlob,CloudBlockBlob outputBlob,Scale = ScaleMode.Both }; Stream stream = new MemoryStream(); ImageBuilder.Current.Build(new ImageJob(myBlob,stream,instructions)); stream.Seek(0,SeekOrigin.Begin); outputBlob.Properties.ContentType = "image/jpeg"; outputBlob.UploadFromStream(stream); } 解决方法
使用流输出时,函数会将您的内容类型默认为application / octet-stream.
使用ICloudBlob类型之一,它应该允许您指定blob的内容类型. 这是一个可以作为参数绑定的类型的备忘单:https://jhaleyfiles2016.blob.core.windows.net/public/Azure%20WebJobs%20SDK%20Cheat%20Sheet%202014.pdf (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |