首页 > 解决方案 > 如何正确地将 swagger 定义连接到已部署应用程序的子文件夹到主机

问题描述

我有一个大摇大摆的.net core web api应用程序。

我正在使用.net 5

基础设施:

我正在为 react 应用程序和 webapi 应用程序使用 smarterasp 托管服务。React 应用程序位于创建的(文件夹)网站的根目录上。我刚刚将我的 webapi 从我的根文件夹移动到文件夹api.

注意: webapi 工作正常,当它最初位于根文件夹时。

问题:

正如我所提到的,当我将我的 webapi 移动到api子文件夹时,我收到了错误:

截屏

尝试:

我试图在我的 Startup.cs 类中更改地址:

public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IConfiguration configuration)
{
        app.UseDeveloperExceptionPage();
        app.UseSwagger();
        app.UseSwaggerUI(c =>
        {
            c.SwaggerEndpoint("./swagger/v1/swagger.json", "NNN.WebApi v1");
            c.RoutePrefix = string.Empty;
        });
       ...
}

但是,我收到或此失败消息或 404 未找到..

标签: c#iisdeploymentswaggerasp.net-core-webapi

解决方案


解决方案是放置以下端点: c.SwaggerEndpoint("/v1/swagger.json", "NNN.WebApi v1");


推荐阅读