diff --git a/pages/passkey-register-cross-device.vue b/pages/passkey-register-cross-device.vue new file mode 100644 index 0000000..c4b4b36 --- /dev/null +++ b/pages/passkey-register-cross-device.vue @@ -0,0 +1,142 @@ + + + + Passkey-Registrierung + + + + Lade Registrierungsoptionen... + + + + đ + Warte auf Passkey-Authentifizierung... + Bitte bestätigen Sie die Registrierung auf diesem Gerät. + + + + Fehler + {{ errorMessage }} + + Erneut versuchen + + + + + â Erfolgreich! + Die Credential-Response wurde an den Desktop-Browser gesendet. + + + + + + diff --git a/server/middleware/log-requests.js b/server/middleware/log-requests.js index 7f453ee..3e54722 100644 --- a/server/middleware/log-requests.js +++ b/server/middleware/log-requests.js @@ -19,14 +19,16 @@ export default defineEventHandler((event) => { '/api/auth/passkeys/register', '/api/auth/passkeys/authentication-options', '/api/auth/passkeys/login', - '/api/auth/passkeys/recovery' + '/api/auth/passkeys/recovery', + '/passkey-register-cross-device' ] - const isPasskeyEndpoint = passkeyEndpoints.some(ep => path.startsWith(ep)) + // Logge auch alle Requests vom Smartphone (Mobile User-Agent) + const isMobile = /Mobile|Android|iPhone|iPad/i.test(userAgent || '') + const isPasskeyEndpoint = passkeyEndpoints.some(ep => path.startsWith(ep)) || (isMobile && path.startsWith('/')) if (isPasskeyEndpoint) { const timestamp = new Date().toISOString() - const isMobile = /Mobile|Android|iPhone|iPad/i.test(userAgent || '') console.log('') console.log('â'.repeat(80)) @@ -51,6 +53,12 @@ export default defineEventHandler((event) => { console.log(`[REQUEST] â ď¸ Wenn dieser Request vom Smartphone kommt, sollte der User-Agent Mobile/Android/iPhone enthalten`) } + // Logge alle Requests vom Smartphone (fĂźr Debugging) + if (isMobile && path.startsWith('/') && !path.startsWith('/_nuxt') && !path.startsWith('/api')) { + console.log(`[REQUEST] đą SMARTPHONE REQUEST - ${path}`) + console.log(`[REQUEST] â ď¸ Wenn das Smartphone die Website Ăśffnet, sollten hier Requests erscheinen`) + } + console.log('â'.repeat(80)) console.log('') }
Lade Registrierungsoptionen...
Warte auf Passkey-Authentifizierung...
Bitte bestätigen Sie die Registrierung auf diesem Gerät.
Fehler
{{ errorMessage }}
â Erfolgreich!
Die Credential-Response wurde an den Desktop-Browser gesendet.