过滤器用于在 Web API 框架请求处理的不同级别注入额外的逻辑。过滤器为横切关注点(日志记录、授权和缓存)提供了一种方法。过滤器可以通过声明式或编程方式应用于操作方法或控制器。以下是 Web API C# 中的过滤器类型:身份验证过滤器 - 身份验证过滤器帮助我们验证用户详细信息。在身份验证过滤器中,我们编写用于检查用户真实性的逻辑。授权过滤器 - 授权过滤器负责检查用户访问权限。它们在框架中实现 IAuthorizationFilter 接口。操作过滤器 - 操作过滤器用于添加额外的... 阅读更多
Web API 操作方法可以具有以下返回类型:Void 原生类型/复杂类型 HttpResponseMessage IHttpActionResult Void - 没有必要所有操作方法都必须返回某些内容。它可以具有 void 返回类型。示例 using DemoWebApplication.Models using System.Web.Http; namespace DemoWebApplication.Controllers{ public class DemoController : ApiController{ public void Get([FromBody] Student student){ //某些操作 } } }具有 void 返回类型的操作方法将返回 204 No Content 响应。原生类型/复杂类型 - 操作方法可以返回原生类型(如 int、string)或复杂类型(如 List 等)。示例 using DemoWebApplication.Models; using System.Collections.Generic; using System.Web.Http; namespace DemoWebApplication.Controllers{ public class ... 阅读更多
当 ASP.NET Web API 调用控制器上的方法时,它必须设置参数的值,这个过程称为参数绑定。为了绑定模型(操作参数),通常会默认为格式化程序,我们需要使用 [FromUri] 属性从 URI 中绑定它。FromUriAttribute 只是从 ModelBinderAttribute 继承而来,它为我们提供了一个快捷指令,指示 Web API 使用 IUriValueProviderFactory 中定义的 ValueProviders 从 URI 中获取特定参数。该属性本身是密封的,不能再扩展,但是您可以根据需要添加任意数量的自定义 IUriValueProviderFactories。[FromBody] 属性… 阅读更多
可以使用 WebClient 从 URL 下载文件。它位于 System.Net 命名空间中。WebClient 类提供了用于向任何由 URI 标识的本地、内联网或 Internet 资源发送数据或从中接收数据的常用方法。WebClient 可以说是安装在计算机中并用于根据用户的请求与 Web 服务器交互的应用程序或 Web 浏览器(如 Google Chrome、Internet Explorer、Opera、Firefox、Safari)。它基本上是一个消费者应用程序,它从服务器收集处理后的数据。客户端和服务器是连接的两个部分,它们是… 阅读更多