How can I tell if code will run on the client or server with Blazor?(我如何判断代码是否可以在安装了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的客户端或服务器上运行?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:我如何判断代码是否可以在安装了Blazor的客户端或服务器上运行?


- Web Api 中的 Swagger .netcore 3.1,使用 swagger UI 设置日期时间格式 2022-01-01
- MoreLinq maxBy vs LINQ max + where 2022-01-01
- 在哪里可以找到使用中的C#/XML文档注释的好例子? 2022-01-01
- 带有服务/守护程序应用程序的 Microsoft Graph CSharp SDK 和 OneDrive for Business - 配额方面返回 null 2022-01-01
- WebMatrix WebSecurity PasswordSalt 2022-01-01
- 良好实践:如何重用 .csproj 和 .sln 文件来为 CI 创建 2022-01-01
- 输入按键事件处理程序 2022-01-01
- C# 中多线程网络服务器的模式 2022-01-01
- 如何用自己压缩一个 IEnumerable 2022-01-01
- C#MongoDB使用Builders查找派生对象 2022-09-04