【问题标题】:HTTP trigger azure function get image from blob storage errorHTTP 触发 azure 函数从 blob 存储错误中获取图像
【发布时间】:2023-01-29 20:37:17
【问题描述】:

我的 Azure 函数中的 http 触发器有问题。当我在本地使用 http 触发器时,触发器正确地从在线 azure 存储容器中获取图片。一旦部署了 azure 函数,它就不再起作用。

这是我的 http 触发器代码,它在本地工作但一旦部署就不会工作:

using System;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.Http;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Logging;
using Azure.Storage.Blobs;

namespace PlaygroundAzureFunctions
{
    public static class HttpFromStorage
    {
        [FunctionName("GetSnapsnot")]
        public static async Task<IActionResult> GetSnapsnot(
            [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "Snapshot")] HttpRequest req,
            ILogger log)
        {
            log.LogInformation($"Snapsnot requested at: {DateTime.Now}");

            string Connection = Environment.GetEnvironmentVariable("AzureWebJobsStorage");
            string containerName = Environment.GetEnvironmentVariable("ContainerName");
            var blobClient = new BlobContainerClient(Connection, containerName);
            var blob = blobClient.GetBlobClient("TestPicture.jpeg");

            var image = await blob.OpenReadAsync();

            log.LogInformation($"Snapsnot request returned at: {DateTime.Now}");

            return new OkObjectResult(image);
        }

    }
}

这是我的 local.settings.json:

{
    "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "StringTakenFromCorrectStorageAccessKeysJustHiddenHere",
    "ContainerName": "file-upload", // container name
    "FUNCTIONS_WORKER_RUNTIME": "dotnet"
  }
}

我的目标是一旦部署我就可以使用公众到互联网应用程序并使用它的 url 调用 api 来触发要显示的特定图片

【问题讨论】:

    标签: c# azure-functions


    【解决方案1】:

    local.settings.json 仅在您在本地运行并且部署该功能时缺少设置时使用。

    您通常不想将生产机密存储在您的 git 存储库中,您应该单独设置它们(作为部署管道的一部分),但如果这是为了测试,您可以将设置放在 settings.json(没有local)。

    【讨论】:

      猜你喜欢
      • 2021-10-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-06
      • 1970-01-01
      • 2019-02-08
      • 2019-01-02
      • 2018-06-05
      相关资源
      最近更新 更多