How to redirect from root url to /swagger/ui/index?(如何从根 url 重定向到/swagger/ui/index?)
问题描述
我有一个安装了 Swashbuckle 的 WebApi 项目.
I have a WebApi project with Swashbuckle installed onto it.
在默认设置中,我必须在浏览器中打开 http://localhost:56131/swagger/ui/index 才能查看我的操作描述和测试页面.我希望它可以从站点的根目录访问:http://localhost:56131/.我怎样才能做到这一点?
In default setup, I must open in browser http://localhost:56131/swagger/ui/index to view my operations description and test page. I want it to be accessible from root of the site: http://localhost:56131/. How can I achieve this?
推荐答案
受this answer to similar question的影响,略修改代码:
Influenced by this answer to similar question, slightly modified code:
public class WebApiConfig
{
public static void Configure(IAppBuilder app)
{
var httpConfig = new HttpConfiguration();
// Attribute routing
config.MapHttpAttributeRoutes();
// Redirect root to Swagger UI
config.Routes.MapHttpRoute(
name: "Swagger UI",
routeTemplate: "",
defaults: null,
constraints: null,
handler: new RedirectHandler(SwaggerDocsConfig.DefaultRootUrlResolver, "swagger/ui/index"));
// Configure OWIN with this WebApi HttpConfiguration
app.UseWebApi(httpConfig);
}
}
这样就不需要像@bsoulier 在他的回答中那样创建新的WebAPI 控制器.
This way it is not necessary to create new WebAPI controller as so did @bsoulier in his answer.
此解决方案基于 Swashbuckle.Core 程序集中已有的类 RedirectHandler.
This solution is based on already existing class RedirectHandler in Swashbuckle.Core assembly.
这篇关于如何从根 url 重定向到/swagger/ui/index?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何从根 url 重定向到/swagger/ui/index?
基础教程推荐
- 我应该在后面的代码中直接使用 Linq To SQL 还是使 2022-01-01
- 禁止输入少量字符,例如'<'、'&a 2022-01-01
- 如果有人提交恶意软件Nuget包怎么办? 2022-01-01
- 如何使用 .Net 检查 Active Directory 服务器是否已启动并正在运行? 2022-01-01
- WPF 模态进度窗口 2022-01-01
- Moq It.Is<>不匹配 2022-01-01
- 当值可以是对象或空数组时反序列化 JSON 2022-01-01
- .NET SerialPort DataReceived 事件未触发 2022-01-01
- C# 从 List<List<int>> 中删除重 2022-01-01
- Azure Functions:CosmosDBTrigger 未在 Visual Studio 中触发 2022-01-01
