当前位置: 移动技术网 > IT编程>开发语言>.net > .Netcore Swagger - 解决外部库导致的“Actions require an explicit HttpMethod binding for Swagger 2.0”

.Netcore Swagger - 解决外部库导致的“Actions require an explicit HttpMethod binding for Swagger 2.0”

2019年11月28日  | 移动技术网IT编程  | 我要评论

离婚后报复前夫,黄页查询,赵卓娜图片

现象:

项目中导入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()));

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网