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

virtual directory Swagger UIendpoint内的IIS站点

傅恺
2023-03-14

Swagger UIendpoint与dev不同(不包括域名)

IIS配置

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)

 app.UseSwagger(c=>
        {
            //Change the path of the end point , should also update UI middle ware for this change                
            c.RouteTemplate = "api-docs/{documentName}/swagger.json";                 
        });          

        app.UseSwaggerUI(c =>
        {  
            //Include virtual directory if site is configured so
            c.SwaggerEndpoint(Configuration["Appsettings:VirtualDirectory"]+"api-docs/v1/swagger.json", "Api v1");                
        });

 services.AddSwaggerGen(c =>
        {
 var xmlDocPath = Path.Combine(PlatformServices.Default.Application.ApplicationBasePath, "Api.xml");
            c.IncludeXmlComments(xmlDocPath);
            c.DescribeAllEnumsAsStrings();

通过上述配置

 "AppSettings": {
"VirtualDirectory": "/"
 "AppSettings": {
"VirtualDirectory": "/Api/"
http://localhost:5001/api-docs/v1/swagger.json

但在登台服务器上是相同的

http://xxxx:5002/swagger/Api/api-docs/v1/swagger.json

而不是(应该是的)

http://xxxx:5002/Api/api-docs/v1/swagger.json

共有1个答案

应俊爽
2023-03-14

这个问题更多地与昂首阔步有关,而不是环境变量。Swagger确实支持虚拟目录,然后配置应该如下所示。请注意,虚拟目录不影响UIendpoint。

app.UseSwagger(c =>
            {
                //Change the path of the end point , should also update UI middle ware for this change                
                c.RouteTemplate = "api-docs/{documentName}/swagger.json";
            });
 app.UseSwaggerUI(c =>
            {
                //Include virtual directory if site is configured so
                c.RoutePrefix = "api-docs";
                c.SwaggerEndpoint("v1/swagger.json", "Api v1");
            });
 类似资料:
  • 我正在开发一个网站,它是使用进行本地托管的。基本的想法是上传文件到我的网站,并能够看到使用FileZilla的结果。所以,我已经安装了FTP服务,然后我已经使用IIS管理器激活了匿名身份验证。 我正试图通过FileZilla访问我的网站内容,但到目前为止我还不能。 我知道我的托管网站可以通过以下地址()可视化,因此我在FileZilla中使用了以下参数: 第一次尝试: 主机:localhost\m

  • 为了测试它是否必须对应用程序的设置做一些事情,我从头创建了一个空的新ASP.NET MVC3网站,为IIS设置,创建虚拟目录,用F5启动,我工作得很好! 我再次创建了第二个网站项目与完全相同的设置(只是为了确保),这也启动了预期。 这导致我认为我有一些配置问题!?但是什么?过去我很少使用IIS,所以我在这方面的知识有限。

  • 本文向大家介绍IIS下使用appcmd批量搭建网站,包括了IIS下使用appcmd批量搭建网站的使用技巧和注意事项,需要的朋友参考一下 使用 cmd 运行如下命令 修改 d 盘 下的 sites.xml 文件 包括批量新增的网站项目 在 cmd 中 使用如下命令导入 在 cmd 中 使用 如下命令重启IIS 刷新你的 iis .. 批量增加成功. 是不是很简单呢,小伙伴们自己参考下吧

  • 站内信用于查看通过控制台发送给用户的信息。 站内信用于查看通过控制台发送给用户的信息。一般为用户操作通知和操作成功信息、工单审批和任务完成等信息。 说明 管理后台下可以看到系统所有的站内信; 域管理后台下可以看到本域下所有的站内信; 项目视图下仅可以看到发送给当前用户的站内信 入口: 在云管平台单击左上角导航菜单,在弹出的左侧菜单栏中单击 “系统配置/消息中心/站内信” 菜单项,进入站内信页面。

  • 我在本地设置了一个网站来进行开发,我已经将它添加到iis并用url编辑了我的主机文件(见下文)。然而,当我浏览到url时,我只得到“嗯,我们无法到达此页面”的消息。 更新 这是否与网站应用程序池在我的工作帐户下而不是IIS或网络服务下运行有关(我不能在后两个帐户下运行,因为它们没有正确的特权来浏览我计算机上的某些文件夹) 更新2

  • 本文向大家介绍Win2003 手机站IIS MIME类型设置大全,包括了Win2003 手机站IIS MIME类型设置大全的使用技巧和注意事项,需要的朋友参考一下 详细步骤为: 打开Internet 服务管理器Internet 服务管理器-->网站属性-->HTTP头(MIME映射)-->新建 添加内容类型(MIME) 关联扩展名 下面是常用的手机文件格式扩展名: 如果需要对支持java下载:在i