我正在尝试创建Azure函数,它从html表单POST请求中获取图像文件,并将其保存到Blob,以便与另一个函数一起使用。这是我的代码:
public static class Function2
{
[FunctionName("Function2")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
log.LogInformation("C# HTTP trigger function processed a request.");
foreach (var file in req.Form.Files)
{
using (var ms = new MemoryStream())
{
var file2 = req.Form.Files[0];
await file2.CopyToAsync(ms);
ms.Seek(0, SeekOrigin.Begin);
var connectionString = "DefaultEndpointsProtocol=https;" +
"AccountName=mystorageaccount;" +
"AccountKey=8Hk5k6j65j5j665j67k==;" +
"EndpointSuffix=core.windows.net";
// intialize BobClient
Azure.Storage.Blobs.BlobClient blobClient = new Azure.Storage.Blobs.BlobClient(
connectionString: connectionString,
blobContainerName: "image-storage",
blobName: "images");
// upload the file
blobClient.Upload(file2);
}
}
return new OkResult("Image uploaded successfully");
}
}然而,这引起了例外:
错误CS1503参数1:无法从“Microsoft.AspNetCore.Http.IFormFile”转换为“System.IO.Stream”
如有任何建议,将不胜感激。
编辑:我以前使用Azure为我的存储帐户创建了Blob容器“映像存储”。
发布于 2021-05-09 13:27:59
https://stackoverflow.com/questions/67457859
复制相似问题