当前位置: 首页 > 知识库问答 >
问题:

如何在生成swagger.json文件后以编程方式访问它

苏鸿才
2023-03-14

注意:我知道我可以通过导航到/{documentname}/swagger.json来访问和查看swagger文档,但这不允许我更改它

共有1个答案

卜阳
2023-03-14

您可以使用自定义筛选器扩展、筛选和自定义模式:https://github.com/domaindrivendev/swashbuckle.aspnetcore#extend-generator-with-operation-schema--document-filters

我确实使用它为每个请求装饰了更多的头字段(如授权头)。我不确定,它是否能对整个endpoint起作用。但也许值得一试。


更新(已编辑)
以下是添加整个endpoint的IDocumentFilter示例:

private class DocumentFilterAddFakes : IDocumentFilter
{
    private PathItem FakePathItem(int i)
    {
        var x = new PathItem();
        x.Get = new Operation()
        {
            Tags = new[] { "Fake" },
            OperationId = "Fake_Get" + i.ToString(),
            Consumes = null,
            Produces = new[] { "application/json", "text/json", "application/xml", "text/xml" },
            Parameters = new List<IParameter>()
                    {
                        new NonBodyParameter() // Can also be BodyParameter
                        {
                            Name = "id",
                            @In = "path",
                            Required = true,
                            Type = "integer",
                            Format = "int32",
                            @Default = 8
                        }
                    },
        };
        x.Get.Responses = new Dictionary<string, Response>();
        x.Get.Responses.Add("200", new Response() { Description = "OK", Schema = new Schema() { Type = "string" } });
        return x;
    }

    public void Apply(SwaggerDocument swaggerDoc, DocumentFilterContext context)
    {
        for (int i = 0; i < 10; i++)
            swaggerDoc.paths.Add("/Fake/" + i  + "/{id}", FakePathItem(i));
    }
}
 类似资料:
  • 问题内容: 我想为Java的玩具语言编写一个编译器。我想生成可运行的.class文件。我想知道执行此操作的最佳库或工具是什么?我知道我可以学习所有指令的二进制格式并建立自己的常量池等,但这似乎应该已经完成​​:没必要重新发明轮子,对吗? 在线搜索我发现了两种不同的Java汇编语言Jasmin和Jamaica,但是只有Jasmin看起来有所维护。 是否存在用于将字节码写入流的Java库?这是Apac

  • 问题内容: 有没有人使用基于Java的库来生成excel文档?最好支持2003年? 问题答案: 我目前正在使用非常全面的Apache POI(http://poi.apache.org/index.html)。2003文件格式版本仍处于beta版本,但似乎运行良好。我并没有很好地利用它的功能,只是对Excel进行简单的读写,但这似乎是可靠的。

  • 我使用java spring boot framework为我的项目创建REST api,并使用“springfox-swagger2和springfox-swagger-UI”生成swagger文档。我可以使用URL http://localhost:8080/swagger-ui.html查看我的文档。

  • 问题内容: 我们使用下面的代码从属性文件中注入具有属性的Spring bean。 有没有一种方法可以通过编程方式访问属性?我试图做一些没有依赖注入的代码。所以我只想要一些这样的代码: 问题答案: 怎么样?

  • 是否可以在Inno安装程序中以编程方式生成文件标志?我的安装程序源代码在一个相当大的目录结构中包含大量文件。目前,我通过一次添加整个文件夹来最小化脚本的复杂性。这很有效,但是,有许多文件分散在整个层次结构中,它们没有从压缩中受益(例如*. jpg),并且显着增加了安装程序构建时间。理想情况下,我想做以下事情: 其中GetFlages将检查当前文件的扩展名,并为我不想压缩的文件类型返回“未压缩”。这

  • 问题内容: 我编写了python代码,以编程方式生成卷积神经网络(CNN),用于训练和验证caffe中的.prototxt文件。下面是我的功能: 有没有办法类似地生成deploy.prototxt以测试不在lmdb文件中的看不见的数据?如果是这样的话,如果有人可以给我提供参考,我将不胜感激。 问题答案: 很简单: 现在调用函数: 正如你可以看到有两处修改到prototxt(条件上是): 第一个,而