Резервный Blazor для старых браузеров - PullRequest
0 голосов
/ 11 февраля 2020

Для контекста: я хотел сделать простой механизм обнаружения ботов (капча) на странице регистрации. Поэтому я решил использовать iframe с небольшим клиентским приложением Blazor, которое просто показывает флажок и выполняет некоторые операции C# (хэширование переменной с солью). Поскольку это компилируется в wasm, это будет довольно сложно обойти. Я понимаю, что это не невозможно, но для небольшого сайта этого должно быть более чем достаточно. Это удобнее для пользователя, чем набирать что-то, и у него нет зависимости от сторонних инструментов, таких как Google Reaptcha.

Но, очевидно, это не будет работать в старых браузерах. Я мог бы показать альтернативную капчу для этих браузеров, но документы Blazor не очень полезны, когда дело доходит до поддержки браузера (они просто говорят «последние»).

Есть ли способ определить, будет ли браузер в состоянии правильно обращаться с Blazor?

Было бы достаточно просто определить, поддерживает ли браузер WebAssembly? Или у Blazor есть другие требования?

Спасибо!

1 Ответ

2 голосов
/ 11 февраля 2020

Ни один из ваших C# кодов не компилируется в WebAssembly. Только среда выполнения Mono компилируется в WebAssembly, затем она загружает и запускает библиотеки DLL вашего приложения прямо в браузере. Просто хотел сначала это прояснить.

Чтобы ответить на ваш вопрос о совместимости браузера. Вы можете проверить, какие браузеры поддерживают WebAssembly через веб-сайт CanIUse.com (https://caniuse.com/#search = webassembly ).

Я бы просто добавил, что использование Blazor для этого довольно тяжелое решение прямо сейчас стандартный файл> нового проекта Blazor составляет около 2,4 Мб, что довольно много, чтобы показать флажок.

...