如何扩展 ASP.Net Web Forms 应用程序添加 Blazor?
How to extend ASP.Net Web Forms app adding Blazor?
我们有一个大型遗留 Web 表单应用程序。
我们想继续扩展它的功能(添加新页面)。但是我们想停止添加更多的 Web 窗体代码,而是想使用 Blazor 来开发未来的所有新功能。
理想情况下,来自 Web 表单页面的 link 会将浏览器重定向到由 Blazor 应用提供服务的页面,反之亦然,用户无法区分这种转换。
这可能吗?如果是,如何实现?
还有,身份验证呢?理想情况下,用户将登录我们现有的 Web 表单应用程序,并且在转换到 Blazor 应用程序时不需要再次登录。
我做了什么:
在现有应用程序下的子文件夹中托管 blazor 应用程序:
myapp.com/oldapp
myapp.com/oldapp/blazor
您可以在它们之间添加链接,如果您使用相同的布局用户应该不会注意到。
现在因为您使用的是相同的主机名,所以您可以在登录旧应用程序时发出带有 JWT 令牌的 cookie,并且因为新应用程序在相同的主机名上运行,所以 blazor 应用程序可以获取此 cookie 并使用向同样使用 JWT 身份验证的新后端 API 发出请求的令牌。
我们有一个大型遗留 Web 表单应用程序。 我们想继续扩展它的功能(添加新页面)。但是我们想停止添加更多的 Web 窗体代码,而是想使用 Blazor 来开发未来的所有新功能。
理想情况下,来自 Web 表单页面的 link 会将浏览器重定向到由 Blazor 应用提供服务的页面,反之亦然,用户无法区分这种转换。
这可能吗?如果是,如何实现?
还有,身份验证呢?理想情况下,用户将登录我们现有的 Web 表单应用程序,并且在转换到 Blazor 应用程序时不需要再次登录。
我做了什么:
在现有应用程序下的子文件夹中托管 blazor 应用程序:
myapp.com/oldapp
myapp.com/oldapp/blazor
您可以在它们之间添加链接,如果您使用相同的布局用户应该不会注意到。
现在因为您使用的是相同的主机名,所以您可以在登录旧应用程序时发出带有 JWT 令牌的 cookie,并且因为新应用程序在相同的主机名上运行,所以 blazor 应用程序可以获取此 cookie 并使用向同样使用 JWT 身份验证的新后端 API 发出请求的令牌。