使用aspnetboilerplate配置swagger时出现问题

时间:2018-11-20 15:02:26

标签: asp.net-core swagger aspnetboilerplate

我们有一个带有aspnetboilerplate和swagger的Ne​​tcore应用程序。我们要更改招摇网址。为此,我们使用:

        app.UseSwaggerUI(options =>     
            {
                options.SwaggerEndpoint("swagger/v1/swagger.json", "Sample API");
                options.RoutePrefix = "sdAPi/swagger";
            }
        );

问题是我们还想使用abp UI。为此,我们使用:

        app.UseSwaggerUI(options => 
        {
            options.SwaggerEndpoint("swagger/v1/swagger.json", "Sample API");                
            options.IndexStream = () => Assembly.GetExecutingAssembly()
                .GetManifestResourceStream("SmartDoc.Web.wwwroot.swagger.ui.index.html");
        });

这两行产生冲突。如果不放置RoutePrefix,则swagger从默认URL开始,具有UI的特征swagger和abp。

如果仅使用RoutePrefix,则会迅速将其加载到URL中。

一旦放置RoutePrefix和IndexStream,swagger就不会加载服务。

        app.UseSwaggerUI(options => 
        {
            options.SwaggerEndpoint("swagger/v1/swagger.json", "Sample API");
            options.RoutePrefix = "sdAPi/swagger";
            options.IndexStream = () => Assembly.GetExecutingAssembly()
                .GetManifestResourceStream("SmartDoc.Web.wwwroot.swagger.ui.index.html");
        });

S草:2.3.0.0 Abp:3.8.1 网核:2.1


如何使用这两个属性?或...如何在不使用RoutePrefix的情况下更改默认的地址?

问候

0 个答案:

没有答案