我创建了一个Azure函数,放置了一个Route属性,它不起作用。
如果我输入Route参数,那么它可以工作。
public static class Function1
{
[FunctionName("StartUserSession")]
[Microsoft.AspNetCore.Mvc.Route("Client/StartUserSession")]
public static IActionResult StartUserSession([HttpTrigger(AuthorizationLevel.Function, methods: new string[] { "get", "post" }
//, Route ="Client/StartUserSession"
)]HttpRequest req, TraceWriter log)
{
var UserId = req.Query["UserId"];
return new OkObjectResult($"StartUserSession, O UserId informado é {UserId}");
}
如果我使用路线属性,当我跑步时,会出现:
如果我使用Route参数,那么:
如何使Route属性有效?
答案 0 :(得分:0)
正如@Mikhail所提到的,属性[Microsoft.AspNetCore.Mvc.Route("")]
在Azure功能中不起作用。
Azure Function有自己的路由操作,它是HttpTrigger属性中包含的属性,作为您使用的参数。 或者,如果您使用c#脚本(.csx)开发Azure功能,则可以根据custom-http-endpoint在@Marie建议的函数中在function.json文件中定义路由。
默认情况下,Azure Functions在所有函数上都有一个路由前缀/api/
,就像WebApi一样,可以避免与ASP.NET MVC路由冲突。