dotnet core 2.2开发项目中,常会使用Swagger UI来生成在线Api文档. 某些接口不想放到Swagger中可以这样写Filter: /// <summary> /// 隐藏swagger接口特性标识 /// </summary> [System.AttributeUsage(System.AttributeTargets.Method | System.AttributeTargets.Class)] public partial class HiddenApi…
Swagger是这个非常强大的api文档工具,通常可以用来测试接口,和查看接口,就像这样: 非常的好用和快捷,这是一个小小的demo,我们在完成系统时,发布后,外部依旧可以用/swagger访问到这个接口文档,这就造成了系统不安全的问题,那么我们应该怎么办呢,我们需要隐藏这些接口. 如何隐藏呢,首先我们需要建立一个新类: namespace TR.Unit { using System; using System.Linq; using Microsoft.AspNetCore.Mvc.ApiE…
上一篇net core 2.2 swagger的枚举描述,core 3.0 需要升级swagger到5.0rc版,配置需要做些修改,swaager启用了OpenApi标准,之前的枚举描述方法也失效了. 这里通过了反射程序集,获取所有枚举定义放入字典,然后通过OpenApiSchema.Key来查表找到对应的枚举类型,通过Microsoft.OpenApi.Any.OpenApiInteger.Value强转会枚举,再补写枚举对应的描述. /// <summary> /// 基本状态 /// &…
环境: dotnet core 1.0.1 CentOS 7.2 今天在服务器巡检的时候,发现一个服务大量抛出异常 异常信息为: LockStatusPushError&&Message:One or more errors occurred. (An error occurred while sending the request. Too many open files)&InnerMessageAn error occurred while sending the reque…
原文:dotnet core 通过修改文件头的方式隐藏控制台窗口 在带界面的 dotnet core 程序运行的时候就会出现一个控制台窗口,本文告诉大家使用最简单方法去隐藏控制台窗口. 最近在使用 Avalonia 开发,这是一个支持 dotnet framework 和 dotnet core 的框架,在开发的过程发现启动的窗口居然会出现控制台窗口. 在 VisualStudio 2017 的格式,如果是 dotnet framework 的程序,在没有设置 OutputType 为 WinE…
swagger的一个最大的优点是能实时同步api与文档,但有些时候我们不想全部公开接口,而要隐藏或屏蔽一些接口类或方法,swagger也是支持的,只需要设置一下DocumentFilter方法. 第一步:在SwaggerConfig.cs配置文件中设置DocumentFileter public class SwaggerConfig { public static void Register() { var thisAssembly = typeof(SwaggerConfig).Assemb…
如果写一个控制台程序,需要隐藏这个控制台程序,可以使用本文的方法 如果是在 Windows 下运行, 可以使用一些系统提供的方法隐藏控制台.如果是 Linux 下,都是控制台,就不用隐藏了 复制下面的代码,然后使用 HiddenConsoleWindow.Hide 就可以隐藏控制台 public static class HiddenConsoleWindow { public static void Hide() { ShowWindow(GetConsoleWindow(), SW_HIDE…
昨天我的一个 app 的接口服务器挂掉了,国外的小鸡意外的翻车,连同程序和数据一起,猝不及防.我的服务端程序是 asp.net mvc ,小鸡是 256 M 的内存跑不了 windows 系统,装的 mono .服务器用的 jexus,但是还有一个 apache+php+mysql 的全家桶占用了 80 端口,所以这个接口是通过 apache 反向代理的. 这样一来本来环境就很复杂了,我 ubuntu 16.04 装 mono 下载了差不多700 mb 的数据,安装后体积更大,简直太不环保了,只…
一.入门 https://www.nuget.org/packages/Swashbuckle.AspNetCore.SwaggerGen/ 1.添加核心NUGET包 Swashbuckle.AspNetCore: 2.startup中配置: ConfigureServices中: //注册swagger生成器,定义一个或多个swagger文档 services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new Info { Version…
swagger是webapi文档描述及调试工具,要在asp.net mvc中使用swagger,需要安装Swashbuckle.Core这个包,安装好后会在app_start中生成SwaggerConfig.cs文件,修改Register方法在文件中指定webapi项目生成的xml文件所在路径,详细配置请参考 https://github.com/domaindrivendev/Swashbuckle using System.Web.Http; using WebActivatorEx; us…