Swaggerをデフォルトのスタートページとして設定するにはどうすればいいですかABPテンプレート内の代わりに/Account/Login
?
私はASP.NET MVC 5.x + Angular 1.x.
現在のコード:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
//ASP.NET Web API Route Config
routes.MapHttpRoute(
name: "swagger_root",
routeTemplate: "",
defaults: null,
constraints: null,
handler: new RedirectHandler((message => message.RequestUri.ToString()), "swagger"));
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
Module Zeroの"api/Account/Authenticate"
リクエストが壊れて以下を表示する場合を除いて、すべてが正常に機能しています。
リソースが見つかりません。
this ルーティングを RouteConfig.cs に追加して、ここでコメント化します。
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
//ASP.NET Web API Route Config
routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
// Set Swagger as default start page
/*
routes.MapHttpRoute(
name: "swagger_root",
routeTemplate: "",
defaults: null,
constraints: null,
handler: new RedirectHandler((message => message.RequestUri.ToString()), "swagger"));
*/
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
[ソリューションエクスプローラーパネル]> [プロパティ]に移動しました。そこで、launchsettings.jsonというファイルを見つけました。
このファイルで、見つけたすべてのセクションで「launchUrl」パラメーターの値を「swagger/index.html」に変更しました。
それは私にとってはうまくいきます。
================================================== =============================
En el Panel de Soluciones> Propiedades、hay un archivo que se llama launchsettings.json。
Ahimodifiquéel valor delparámetro "launchUrl" en todas las partes que estaba y le puse "swagger/index.html"、con eso mefuncionó。
サリュード。
Visual Studio、IIS Express、IISの両方でうまく機能したのは、次の内容のコントローラーを作成することでした。
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace WebApplication.Controllers
{
/// <summary>
/// Controller to display API documentation in Swagger format
/// </summary>
[Route("")]
[ApiExplorerSettings(IgnoreApi = true)]
public class DocsController : Controller
{
[Route("docs"), HttpGet]
[AllowAnonymous]
public IActionResult ReDoc()
{
return View();
}
[Route(""), HttpGet]
[AllowAnonymous]
public IActionResult Swagger()
{
return Redirect("~/swagger");
}
}
}
注:launchsettings.jsonファイルの編集はVisual Studioではうまく機能しましたが、IISでアプリケーションをホストしている場合は期待どおりに機能しないと主張しています。
このように、いくつかの異なる場所で多くの構成を作成するよりもクリーンであることがわかりました。