.Netcore Swagger - 解决外部库导致的“Actions require an explicit HttpMethod binding for Swagger 2.0”
程序员文章站
2022-04-26 21:46:46
现象: 项目中导入Ocelot后,swagger页面无法正常显示,查看异常发现 Ocelot.Raft.RaftController 中的 Action 配置不完全,swagger扫描时不能正确生成 swagger.json 解决方法: 在扫描中隐藏Ocelot的controller,避免被swag ......
现象:
项目中导入ocelot后,swagger页面无法正常显示,查看异常发现 ocelot.raft.raftcontroller 中的 action 配置不完全,swagger扫描时不能正确生成 swagger.json
解决方法:
在扫描中隐藏ocelot的controller,避免被swagger生成文档
创建apiexplorerignores
public class apiexplorerignores : iactionmodelconvention { /// <summary> /// ocelot自带的controller与swagger2.0冲突,在此排除扫描 /// </summary> /// <param name="action"></param> public void apply(actionmodel action) { //冲突的ocelot.raft.raftcontroller if (action.controller.controllername.equals("raft")) action.apiexplorer.isvisible = false; //ocelot.cache.outputcachecontroller if (action.controller.controllername.equals("outputcache")) action.apiexplorer.isvisible = false; } }
setup.cs中添加
services.addmvc(c => c.conventions.add(new apiexplorerignores()));
上一篇: 域名知识之Internet上有哪些域名