我在项目中定义了几个函数,我一直将它们发布到Azure,以便可以进行测试。我更喜欢使用local command-line utilities并将邮递员指向我的“本地主机”路径。
[FunctionName("NetworkNodes")]
public static async Task<HttpResponseMessage> NetworkNodes([HttpTrigger(AuthorizationLevel.Function, "get", Route = "{DomainName}/{ApiKey}/{NodeId}")]HttpRequestMessage req, TraceWriter log)
{
return req.CreateResponse(HttpStatusCode.OK, "Testing");
}
我可以使函数响应,但是它们始终返回HTTP 500错误,因为它们都设置为需要功能键才能执行。
在本地测试时是否可以使用虚拟功能键,或者在不更改要在本地执行的代码的情况下如何满足AuthorizationLevel
的要求?
答案 0 :(得分:1)
实现此目标的正确方法是使用Azure Function代理。您甚至可以在本地提取函数的授权级别(和令牌)。如以下视频所述,通过点击代理定义来使用func.exe在本地进行测试: