matrix-org / matrix-org/matrix-python-sdk
Registration fails "An access token should not be provided on requests to /register"
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 266
- Forks
- 118
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Describe the bug
Trying to register a new account fails with "An access token should not be provided on requests to /register (except if type is m.login.application_service)", although no token was ever set.
To Reproduce
from matrix_client.client import MatrixClient
matrix = MatrixClient("${homeserverUrl}")
matrix.register_with_password(username="alice", password="foobar")
Expected behavior
Login works fine
Actual behavior
Client side:
Traceback (most recent call last):
File "test.py", line 3, in <module>
matrix.register_with_password(username="alice", password="foobar")
File "/lib/python3.9/site-packages/matrix_client/client.py", line 203, in register_with_password
response = self.api.register(
File "/lib/python3.9/site-packages/matrix_client/api.py", line 160, in register
return self._send(
File "/lib/python3.9/site-packages/matrix_client/api.py", line 748, in _send
raise MatrixRequestError(
matrix_client.errors.MatrixRequestError: 400: {"errcode":"M_UNKNOWN","error":"An access token should not be provided on requests to /register (except if type is m.login.application_service)"}
Server side:
[ 104.741510] synapse[1153]: synapse.http.server: [POST-1] <SynapseRequest at 0x7fc64ed887f0 method='POST' uri='/_matrix/client/r0/register?kind=user' clientproto='HTTP/1.1' site='8448'> SynapseError: 400 - An access token should not be provided on requests to /register (except if type is m.login.application_service)
[ 104.753403] synapse[1153]: synapse.access.http.8448: [POST-1] ::ffff:192.168.1.2 - 8448 - {None} Processed request: 0.010sec/-0.000sec (0.001sec, 0.001sec) (0.000sec/0.000sec/0) 140B 400 "POST /_matrix/client/r0/register?kind=user HTTP/1.1" "matrix-python-sdk/0.4.0" [0 dbevts]
Additional context
This is probably a regression in 0.4.0 related to the addition of use_authorization_header. Also the tests currently only test the creation of guest accounts.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne in matrix_client/api.py bei den im Traceback gezeigten Aufrufen von _send und register und prüfe anschließend den Pfad register_with_password in matrix_client/client.py sowie die vorhandenen Tests für Gastkonten. Reproduziere die Registrierungsanfrage und bestätige, dass sie ohne ein access token erfolgreich ist; füge neben den aktuellen Tests eine Abdeckung für die Passwortregistrierung hinzu.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- api, authentication
- Issue-Typ
- Bug
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 48/100