在环境阶段更改端点路由

Posted

技术标签:

【中文标题】在环境阶段更改端点路由【英文标题】:Change endpoint route on environment stage 【发布时间】:2021-08-25 14:04:01 【问题描述】:

我有一个测试页面,它应该只在开发阶段可用。目前页面只会重定向,当环境未设置为开发时。

public async Task<IActionResult> OnGet()

    if (_environment.IsDevelopment())
    
        await GetTestData();

        return Page();
    

    return Redirect("/");

但我不太喜欢这种方法。有没有办法在端点级别本身捕捉到这一点?像一个后备?

app.UseEndpoints(endpoints =>

    endpoints.MapRazorPages();
    endpoints.MapFallbackToPage("/Registration");
);

【问题讨论】:

【参考方案1】:

可能有很多不同的方法可以解决这个问题。但是,我会使用 Microsoft 的功能管理 - https://docs.microsoft.com/en-us/azure/azure-app-configuration/use-feature-flags-dotnet-core?tabs=core5x。

您可以在 appsettings.json 上默认禁用页面/功能,然后在 appsettings.Development.json 上覆盖此值以启用它。

这也使您可以灵活地为 X 数量的人启用功能。

【讨论】:

以上是关于在环境阶段更改端点路由的主要内容,如果未能解决你的问题,请参考以下文章

Cisco基础:配置目前网络环境项目阶段练习

在部署之前获取 API Gateway 阶段的完整端点名称

如何使用STM32的USB非控制端点发送多个数据包

莫队阶段小结

WCF 路由服务 - 动态错误处理

alpha阶段前后端接口文档试用版