NGINX反向代理背后的Swashbuckle Swagger Try It Out

li9yvcax  于 2023-02-08  发布在  Nginx
关注(0)|答案(1)|浏览(159)
    • bounty将在4天后过期**。回答此问题可获得+50的声誉奖励。R.Haughton正在寻找来自声誉良好来源的答案

我正在尝试让swaggerUI Try it out函数在NGINX反向代理后面工作。我正在使用www.example.com Core和Swashbuckle Swagger包ASP.net Core with the package Swashbuckle Swagger
由于我有多个API,我添加了一个子域到我的nginx配置。
当我使用try it out时,它会将请求发送到
http://{server-ip-address}/api/myendpoint
代替
http://{server-ip-address}/myapi/api/myendpoint
我的目标是将myapi添加到Try it out函数的地址,我不确定是否应该编辑NGINX配置或www.example.com核心配置。ASP.net core configuration.
谢谢你的帮忙!

quhf5bfb

quhf5bfb1#

您可以在Startup.cs中尝试:

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
   ...
   app.UseSwagger(opt =>
    {
       opt.PreSerializeFilters.Add((swagger, httpReq) =>
       {
            var serverUrl = $"http://{httpReq.Host}/myapi/api/myendpoint";
            swagger.Servers = new List<OpenApiServer>{new() { Url = serverUrl }};
       });
    });

相关问题