Swagger是这个非常强大的api文档工具,通常可以用来测试接口,和查看接口,就像这样: 非常的好用和快捷,这是一个小小的demo,我们在完成系统时,发布后,外部依旧可以用/swagger访问到这个接口文档,这就造成了系统不安全的问题,那么我们应该怎么办呢,我们需要隐藏这些接口. 如何隐藏呢,首先我们需要建立一个新类: namespace TR.Unit { using System; using System.Linq; using Microsoft.AspNetCore.Mvc.ApiE
一.why 在swagger ui界面中有时候不想显示某些api,通过下面的方式可以实现. 1.1.新建一个类实现IDocumentFilter接口 using Swashbuckle.Swagger; using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Http.Description; namespace InvoiceApi.Invoice
一.在SwaggerConfig.cs中配置如下: c.DocumentFilter<ShowApiFilter>(); c.DocumentFilter<HideApiFilter>(); 二.新建类,分别处理Show与Hide public class ShowApiAttribute : Attribute { } public class ShowApiFilter : IDocumentFilter { public void Apply(SwaggerDocument
swagger的一个最大的优点是能实时同步api与文档,但有些时候我们不想全部公开接口,而要隐藏或屏蔽一些接口类或方法,swagger也是支持的,只需要设置一下DocumentFilter方法. 第一步:在SwaggerConfig.cs配置文件中设置DocumentFileter public class SwaggerConfig { public static void Register() { var thisAssembly = typeof(SwaggerConfig).Assemb