Laufzeitfehler Login-Bug

Die lokale Anmeldung (Login mit E-Mail und Passwort) reagiert aufgrund des folgenden Laufzeitfehlers nicht:

**publickeycredential is not defined.**
passkeyConditionalLogin
installModifier
install
untrack
install

Jedes Mal, wenn Sie auf die Anmeldeschaltfläche klicken, die in der Konsole angezeigt wird.

Umgebung: Nur Einladungen, nur Anmeldesystem. Versuch, sich als Administrator anzumelden. Der einzige Weg, wie ich hineinkomme, ist mit einer E-Mail, die einen einmaligen Sitzungslink enthält.

Danke für den Bericht, ich werde es mir ansehen. Auf welchem Browser (oder welchen Browsern) tritt dies auf, wissen Sie?

1 „Gefällt mir“

Firefox (Tor). Ich wäre Ihnen sehr dankbar, wenn Sie es beheben könnten!
Das Setup zur Reproduktion: Nur registrierte Benutzer und nur Einladungen.

Ich sehe auch einen Fehler in Firefox (nicht in Chrome):

1 „Gefällt mir“

Ich dachte, ich würde verrückt werden! Für mich war es PublicKeyCredential ist nicht definiert. Sind Sie auch nur zur Einladung und Anmeldung?

Gibt es Neuigkeiten? Es ist für mich ziemlich katastrophal.

Ein Fix wird bald zusammengeführt :+1:

2 „Gefällt mir“

Verdammt! Danke euch beiden und allen, die das beheben. Dann führe ich rebuild aus und es sollte gut sein, ja? Oder zieht discourse-setup auch aus dem Repository? Außerdem glaube ich, dass es einen Fehler mit der Standard-Onion-Vorlage gibt: Die Onion-Links leiten zur Clearnet-Seite weiter und ich muss das Doctor-Skript wegen einiger Fehler ausführen. Ich glaube nicht, dass es sinnvoll ist, die Weiterleitung in Nginx manuell zu deaktivieren, da der Rest der Anfragen immer noch über Clearnet läuft, oder?

DANKE FÜR DEN COMMIT. Wann wird er normalerweise zusammengeführt?

Kann ich diese paar Zeilen technisch selbst hinzufügen, damit ich nicht mehr Ausfallzeit durch den Wiederaufbau habe? Wo befindet sich das App-Verzeichnis? Und würde ein Neustart des Launchers ausreichen?

Es kommt, es kommt. Ich habe gerade eine Änderung an der Korrektur vorgenommen, es ist knifflig, weil die bedingte Benutzeroberfläche von Passkeys von Browsern uneinheitlich unterstützt wird.

Es gibt eine API, um zu prüfen, ob die Funktion unterstützt wird, hier beschrieben: PublicKeyCredential: isConditionalMediationAvailable() static method - Web APIs | MDN, aber der Aufruf von isConditionalMediationAvailable() verhält sich in verschiedenen Browsern unterschiedlich.

In Firefox wird es überhaupt nicht unterstützt. In Safari auf iOS wird die Funktion unterstützt, aber der Aufruf von isConditionalMediationAvailable() gibt false zurück… daher musste ich den Code ändern, um eine Funktionsprüfung speziell für Firefox hinzuzufügen.

Sobald die Tests bestanden sind, werde ich die Änderung zusammenführen, sie sollte dann in etwa einer Stunde verfügbar sein.

3 „Gefällt mir“

Danke, ja, ich habe die zweiten Commits gesehen… Ich ändere die Dinge lokal, also werde ich jetzt nicht neu bauen und nur den Container neu starten. Es wird funktionieren, ja? Hast du das gerade lokal manuell gemacht?

Ich habe die Änderungen gerade hinzugefügt und den Container neu gestartet, aber es funktioniert immer noch nicht. Ich erhalte immer noch die Fehlermeldung „Publickeycredentials is not defined“.

Ich habe den PR gerade zusammengeführt. Sobald er in tests-passed ist, können Sie ihn neu erstellen und das Problem sollte behoben sein. Ich habe lokal mit TOR und Firefox unter macOS getestet.

Behalten Sie GitHub - discourse/discourse at tests-passed im Auge. Sobald der Commit dort angezeigt wird, können Sie ihn neu erstellen.

2 „Gefällt mir“

Muss ich neu erstellen? Warum funktioniert es nicht, wenn ich die Dateien lokal bearbeite und den Launcher neu starte? Denn genau das habe ich gerade getan.

Da die von Ihnen vorgenommenen Änderungen an den Quelldateien vorgenommen werden, müssen Sie die Assets neu erstellen.

Wie lange wird es dauern, bis dieses Update offiziell ist? Meine Android-App zeigt diesen Fehler an.

Die Korrektur wurde nun zusammengeführt und ich sehe, dass sie auf meta.discourse.org bereitgestellt wurde. Können Sie das Problem hier auf Ihrem Android-Gerät reproduzieren? Wenn ja, teilen Sie bitte die Browserversion mit, danke.

1 „Gefällt mir“