Swashbuckle在PCF上未定义任何操作。适用于本地开发人员

时间:2019-06-24 23:52:25

标签: c# swagger swashbuckle

我读了无数文章,对其进行了升级,降级甚至是降级,但没有任何内容可以显示PCF上的sw废定义。

使其更加困难的是,它可以在本地运行VS 2019 IIS Express上运行,但是当我推送到PCF时,它将失败。我的意思是失败的是庞大的UI负载,但是没有定义任何操作。

技术规格:

AspNetCoreAll 2.2.0

Swashbuckle.AspNetCore 4.0.1

Swashbuckle.AspNetCore.Annotations 4.0.1

swagger-codegen-cli-2.3.0

PCF

buildpack:dotnet_core_buildpack_2_2_2_5

堆栈:cflinuxfs3

Startup.cs

public void ConfigureServices(IServiceCollection services)
{
    services
            .AddSwaggerGen(c =>
            {
                c.SwaggerDoc("1.0.0", new Info
                {
                    Version = "1.0.0",
                    Title = "MyAPI",
                    Description = "MyAPI (ASP.NET Core 2.2)",
                    Contact = new Contact()
                    {
                       Name = "Production Support Team",
                       Url = "https://github.com/swagger-api/swagger-codegen",
                       Email = "email@domain.com"
                    },
                    TermsOfService = ""
                });
}

public void Configure(...)
{
        .UseSwagger()
        .UseSwaggerUI(c =>
        {
            //string swaggerJsonBasePath = string.IsNullOrWhiteSpace(c.RoutePrefix) ? "." : "..";
            //c.SwaggerEndpoint($"{swaggerJsonBasePath}/swagger/1.0.0/swagger.json", "ipt-client-mobile-bff");

            c.SwaggerEndpoint("/swagger/1.0.0/swagger.json", "MyAPI");

        });

Project XML Build

我还发现了这个:openapi-original.json,它看起来很像我的招摇动作。...??

有些事情我不清楚。

我认为当您点击/ swagger端点并加载Swagger-UI时,便会动态生成swagger.json。

但是PCF家伙说它是在构建时生成的,之所以没有显示在PCF上,是因为我的PCF打包和构建过程未包含它。

无论哪种情况,我都无法在磁盘上找到swagger.json,这使我怀疑它是在运行中和在内存中生成的。

在PCF日志或F-12开发工具中也没有抛出任何错误。

任何想法都将不胜感激。

TIA

1 个答案:

答案 0 :(得分:0)

很有意思的是...我删除了一个第三方库,因为它未能通过安全扫描,然后推送到dev / qa ...然后我的招摇又开始了!

我已将这两个问题都通知了第三方图书馆的制造商。