matrix-org / matrix-org/matrix-python-sdk

Registration fails "An access token should not be provided on requests to /register"

Ouverte
#323 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
Python
Étoiles
266
Forks
118
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

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.

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez dans matrix_client/api.py par les appels à _send et register indiqués dans le traceback, puis examinez le chemin register_with_password de matrix_client/client.py et les tests existants pour les comptes invités. Reproduisez la requête d’inscription et confirmez qu’elle réussit sans access token ; ajoutez une couverture pour l’inscription avec mot de passe en complément des tests actuels.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
python
Domaine
api, authentication
Type d'issue
Bug
Difficulté
2/5
Temps estimé
1-3 heures
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
48/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.