asp.net - 如何扩展添加 Blazor 的 ASP.Net Web Forms 应用程序?

标签 asp.net architecture webforms blazor

我们有一个大型遗留 Web 表单应用程序。 我们想继续扩展它的功能(添加新页面)。但我们希望停止添加更多 Web 窗体代码,而是希望使用 Blazor 来开发 future 的所有新功能。

理想情况下,来自 Web 表单页面的链接会将浏览器重定向到由 Blazor 应用程序提供服务的页面,反之亦然,用户无法区分这种转换。

这可能吗?如果是,如何实现?

另外,身份验证呢?理想情况下,用户将登录我们现有的 Web 表单应用程序,并且在转换到 Blazor 应用程序时不需要再次登录。

最佳答案

我做了什么:

将 blazor 应用程序托管在现有应用程序下的子文件夹中:

myapp.com/oldapp

myapp.com/oldapp/blazor

您可以在它们之间添加链接,如果您使用相同的布局,用户应该不会注意到。

现在因为您使用的是相同的主机名,所以您可以在旧应用程序中登录时发出带有 JWT token 的 cookie,并且因为新应用程序在相同的主机名上运行,所以 blazor 应用程序可以获取此 cookie 并使用 token 来向同样使用 JWT 身份验证的新后端 API 发出请求。

关于asp.net - 如何扩展添加 Blazor 的 ASP.Net Web Forms 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59760200/

相关文章:

asp.net - 单选按钮的Javascript更改文本

c# - 在 Docker 中启动准系统 MVC C# ASP.NET 项目给出 "Compilation Error"

c# - 将表单标记添加到 ASP.Net Webforms 页面时出现空堆栈错误

architecture - 如果指令是 C 指令,在这个 (nand2tetris) CPU 实现中会发生什么?

java - 您如何在您的 Web 应用程序中实现客户特定的差异?

asp.net - 如果页面出现异常,则使输出缓存无效

javascript - 如何在没有服务的情况下将 ajax 与 mvc4 一起使用?

c# - 如何设计与不可测试函数绑定(bind)的可测试代码

css - Angular Material 不加载

c# - 如何使用循环创建动态数量的 TextBox 控件?