因为种种原因,现在很多企业都采用了前后端分离。而做为后端程序员则需要为前端提供接口。
java初学者常常把接口和interface混一起。后端给的接口实际上就是个可被前端调用的方法的发布地址。假如前端使用ajax来调用后端接口,则需要url,调用类型,参数,同时需要知道后端返回的数据格式。
这里就涉及一个接口文档,即上述的前端需要的那些信息便是一个简单的接口文档。
由于后端有时需要优化和维护接口,但接口文档这种手动写的东西经常会忘了更新,导致文档和接口对不上,比如参数名变了,返回的数据变了之类的。所以我们需要自动生成接口文档的工具。这里介绍Swagger框架。
asp.net使用Swagger框架自动生成接口文档:
1.NuGet包安装:Install-Package Swashbuckle
2.给要生成文档的项目设置xml自动生成:项目/属性/生成
3.根据配置在SwaggerConfig.cs的Register方法配置路径: string path = string.Format("{0}/bin/TDServer.XML", System.AppDomain.CurrentDomain.BaseDirectory);
c.IncludeXmlComments(path); //文件名自定,路径自配。少了此步可能报500找不到的错误
4.附Newtonsoft.Json版本报错解决方法:web.config文件对应位置配置如下
newVersion的值请根据项目中引用的具体Newtonsoft.Json版本配置,如果版本太低,请下载更新。
5.Not supported by Swagger 2.0: Multiple operations with path报错解决:
SwaggerConfig.cs的注释中找到下面这行,取消改行注释,并添加using System.Linq即可
c.ResolveConflictingActions(apiDescriptions => apiDescriptions.First());
1,2,3步必需,4,5视报错处理,最后查看生成文档的地址为localhost:端口/swagger/ui/index#/