Azure function 2.x中带有C#的HTTP请求函数参数的模型绑定
下面是通过visual studio的C#实现的Azure功能。问题在于Azure function 2.x中带有C#的HTTP请求函数参数的模型绑定,c#,azure,asp.net-core,azure-functions,C#,Azure,Asp.net Core,Azure Functions,下面是通过visual studio的C#实现的Azure功能。问题在于request.Form用于创建RequestDto对象,如下所示: public class Function1 { [FunctionName("Token")] public async Task<IActionResult> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null
request.Form
用于创建RequestDto
对象,如下所示:
public class Function1
{
[FunctionName("Token")]
public async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)]
HttpRequest req)
{
var reqDto = new RequestDto
{
UserName = req.Form["username"],
Password = req.Form["password"],
ClientId = req.Form["client_id"],
ClientSecret = req.Form["client_secret"]
};
...
}
}
我认为您正在寻找的是一个自定义绑定或Microsoft所称的:Azure函数/WebJobs绑定扩展。如何做到这一点在这里进行了说明:
您希望实现什么目标?调用
令牌
是否有任何问题?与我们分享有关您的问题的更多信息。我希望在使用ASP.NET CORE时,请求数据能够像第二个示例一样自动填充。您将如何请求令牌操作?这与topicFor绑定无关,它与两个部分相关,即操作参数和客户端请求。如果没有与客户请求相关的信息,我们如何共享如何绑定模型?因此没有对此的内置支持。据我所知。
[Route("api/[controller]")]
[ApiController]
public class ConnectController : Controller
{
[HttpPost("token")]
[Consumes("application/x-www-form-urlencoded")]
public async Task<IActionResult> Token([FromForm]RequestDto request)
{
...
}
}
public class RequestDto
{
[FromForm(Name="client_id")]
public string ClientId { get; set; }
[FromForm(Name = "client_secret")]
public string ClientSecret { get; set; }
public string UserName { get; set; }
public string Password { get; set; }
}