gpt4 book ai didi

c# - 如何检查Azure函数是否在本地环境中运行? `RoleEnvironment` 无法在 Azure Functions 中运行

转载 作者:可可西里 更新时间:2023-11-01 09:07:58 26 4
gpt4 key购买 nike

我在代码中有一个条件,我需要检查当前环境是否不是本地的。我已经使用了 !RoleEnvironment.IsEmulated,现在这在 Azure 函数中不起作用,但在云服务中起作用。相同的代码也在云服务中共享,因此解决方案应该与云服务和azure功能一起使用。

我如何检查当前环境是本地的而不是托管/部署的?

最佳答案

根据 Fabio Cavalcante 的回答,以下是一个可运行的 Azure 函数,用于检查当前运行环境(本地或托管):

using System.Net;
using System.Net.Http;
using System.Threading.Tasks;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.Http;
using Microsoft.Azure.WebJobs.Host;
using System;

namespace AzureFunctionTests
{
public static class WhereAmIRunning
{
[FunctionName("whereamirunning")]
public static async Task<HttpResponseMessage> Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)]HttpRequestMessage req, TraceWriter log)
{
bool isLocal = string.IsNullOrEmpty(Environment.GetEnvironmentVariable("WEBSITE_INSTANCE_ID"));

string response = isLocal ? "Function is running on local environment." : "Function is running on Azure.";

return req.CreateResponse(HttpStatusCode.OK, response);
}
}
}

关于c# - 如何检查Azure函数是否在本地环境中运行? `RoleEnvironment` 无法在 Azure Functions 中运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45026215/

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