旧浏览器的 Blazor 回退

Blazor fallback for older browsers

对于上下文:我想在注册页面上制作一个简单的机器人检测机制 (captcha)。因此,我决定使用一个带有小型 Blazor 客户端应用程序的 iframe,该应用程序只显示一个复选框并执行一些 C# 操作(使用 salt 散列变量)。由于它被编译为 wasm,因此很难绕过。我意识到这并非不可能,但对于小型网站来说应该绰绰有余。它比必须键入内容更加用户友好,并且不依赖于 google 的 recaptcha 等第三方工具。

但显然,这不适用于旧版浏览器。我可以为这些浏览器显示替代验证码,但 Blazor 文档在浏览器支持方面不是很有帮助(他们只是说 "latest")。

有没有办法确定浏览器是否能够正确处理 Blazor?

只检测浏览器是否支持 WebAssembly 是否足够好?或者 Blazor 是否有其他要求?

谢谢!

None 的 C# 代码正在编译为 WebAssembly。只有 Mono 运行时被编译为 WebAssembly,然后它会直接在浏览器中加载并运行您的应用程序 DLL。只是想先把它弄清楚。

回答您关于浏览器兼容性的问题。您可以通过 CanIUse.com 网站 (https://caniuse.com/#search=webassembly) 查看哪些浏览器支持 WebAssembly。

我只想补充一点,目前为此使用 Blazor 是一个相当繁重的解决方案,标准文件 > 新 Blazor 项目大约为 2.4mb,仅显示一个复选框就已经很多了。