随笔分类 - 01-.NET Core框架 / 05-ASP.NET Core
摘要:Intro ASP.NET 8 中引入了 IExceptionHandler,我们可以针对某一类的 exception 做单独的处理, 可以将不同类型的异常有不一样的逻辑做不同的处理,异常处理可以变得更加灵活 Sample 来看一个简单的示例: 我们可以实现 IExceptionHandler 来处
阅读全文
摘要:介绍 在 ASP.NET Core MVC 应用程序中调用AddMvc()或AddMvcCore()添加的标准服务之一是 ApiExplorer。通过调用services.AddApiExplorer()将 ApiExplorer 服务添加到您的应用程序中 ApiExplorer 功能是Micros
阅读全文
摘要:`Swashbuckle.AspNetCore.Annotations`包括一组可应用于Controller、Action和Model的自定义属性,以丰富生成的 Swagger #### 安装Nuget ``` install-package Swashbuckle.AspNetCore.Annot
阅读全文
摘要:生成器将在单个 Swagger 文档中包含所有 API 操作。但是,如有必要,您可以创建多个文档。例如,您可能希望每个 API 版本都有一个单独的文档。 案例 添加服务、中间件(v1、v2) builder.Services.AddSwaggerGen(options => { //定义多个Swag
阅读全文
摘要:什么是Swagger/OpenAPI Swagger是为帮助我们生成webapi文档的工具,可以直接从您的路由、控制器和模型生成漂亮的 API 文档 Swagger 是一个与语言无关的规范,用于描述 REST API。Swagger 项目已捐赠给 OpenAPI 计划,现在它被称为OpenAPI。
阅读全文
摘要:内容协商 客户端再请求头Accept字段中指定什么样的MIME类型,WebApi服务端就返回对应的MIME类型(响应头的中Content-Type就是Accept中指定的MIME类型)。 而现实状况是,Web API服务端能返回什么MIME类型的响应类型取决于有没有对应这个MIME类型的MediaT
阅读全文
摘要:API 版本控制可以采用不同的方式进行控制: (1)在 URL 中追加版本或作为查询字符串参数, (2)通过自定义标头和通过接受标头 在这篇文章中, 让我们来看看如何支持多个版本的 ASP.NET Core Web API。 一、创建asp.net core webapi 项目,引用NuGet包:I
阅读全文
摘要:Refit可以进行强类型的客户端调用 Refit 是一个类型安全的 REST 开源库,是一套基于 RESTful 架构的 .NET 客户端实现,内部使用 HttpClient 类封装,可通过 Refit 更加简单安全地访问 Web API 接口,要使用 Refit 框架,只需要在项目中通过 NuGe
阅读全文
摘要:过滤器接口 授权过滤器:IAuthorizationFilter、IAsyncAuthorizationFilter(AuthorizeFilter) 通常用于验证请求合法性 资源过滤器:IResourceFilter、IAsyncResourceFilter 适合做缓存 Action过滤器:IAc
阅读全文
摘要:Action返回类型 特定类型 返回类型是特定类型,状态码是200,如果想返回其他的HTTP状态码类型,只能设置ResponseStatusCode,不优雅 public Person Person1([FromQuery] int id = 1) { if (id != 1) { Response
阅读全文