Я пытаюсь настроить Webauthn в приложении TypeScript React, и у меня возникают проблемы при тестировании драматурга.
Это код, который я использую:
const isSupported =
await PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable();
И в Webkit в Linux я получаю эту ошибку:
ReferenceError: Can't find variable: PublicKeyCredential
Chrome и Firefox в Linux работают нормально, а Chrome, Firefox и Webkit также работают в macOS.
Итак, как мне обойти это? Как безопасно обеспечить доступность PublicKeyCredential?






Вы можете установить проверки безопасности, доступны или нет «PublicKeyCredential» и «isUserVerifyingPlatformAuthenticatorAvailable». Что-то вроде следующего.
const isWebauthnAvailable =
typeof PublicKeyCredential !== 'undefined' &&
typeof PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable === 'function';
if (isWebauthnAvailable) {
const isWebauthnSupported = await PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable();
} else {
console.error('WebAuthn is not supported in this environment.');
}