我如何判断代码是否可以在安装了Blazor的客户端或服务器上运行? [英] How can I tell if code will run on the client or server with Blazor?

查看:38
本文介绍了我如何判断代码是否可以在安装了Blazor的客户端或服务器上运行?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是Blazor开发的新手,我可能在这里遗漏了一些明显的东西,但搜索Google、阅读文档和搜索这个站点都没有找到答案。

出于安全原因(例如,散列密码),我需要确保在服务器端运行一些代码。我知道Blazor通常会自动确定代码将在哪里运行,但在这种情况下,我能确保一些功能在客户端和一些服务器端运行吗?

推荐答案

Blazor服务器是所有代码都在服务器上运行的应用程序模型,包括Blazor UI组件和相关代码。这将被转换为通过SignalR发送的HTML Diff消息。

Blazor WASM(WebAssembly)是将Blazor UI组件下载到客户端并在其上运行的位置。因此,任何敏感或机密代码都不应包含在该项目中。

在选择项目类型时,首先在两者之间进行选择:

如果您有Blazor WASM应用程序,那么您可以决定在服务器上运行某些功能(如果您愿意)。标准的"ASP.NET Core Hosted"示例通过将天气预报服务实现为Web API方法来实现这一点(请参见WeatherForecastController.cs)。

您可以在ASP.NET Core服务器应用程序中安全地承载代码,客户端永远无法访问它,除非通过您提供的方法,例如Web API方法。

任何与安全或验证有关的内容都是一个很好的例子。任何密码哈希代码都应始终位于服务器上,而不应位于客户端。

希望这有助于澄清这一点

这篇关于我如何判断代码是否可以在安装了Blazor的客户端或服务器上运行?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆