在Web API中验证HttpGet请求的id

本文关键字:请求 id HttpGet 验证 Web API | 更新日期: 2023-09-27 18:27:41

我有以下web api:

public User Get([FromUri]string id)

在执行函数之前,是否有方法验证id不超过10个字符?(我希望它能像发布请求中的Model一样工作)

在Web API中验证HttpGet请求的id

  • 最简单的方法是将ASP.NET内置的Route属性添加到方法中,并添加符合您要求的约束。

  • 你可以通过实现IRouteConstraint接口来构建你的自定义约束,比如这个例子

  • 此外,您可以创建自己的ActionFilterAttribute并用这个新属性装饰您的方法,当您的方法执行时,将执行您的动作过滤器属性,并使用一些验证规则,您可以检查模型并验证它,或者在响应中设置错误,如Yuval提供的示例中所示。