ResourceOwnerPasswordCredentialsGrant поддерживает только username
и password
в качестве запрашивающих параметров. Если вы хотите поддерживать email
, вам лучше настроить ResourceOwnerPasswordCredentialsGrant
как:
def authenticate_user(self, username, password):
if '@' in username:
user = get_user_by_email(username)
else:
user = get_user_by_username(username)
if user.check_password(password):
return user
И вы все равно должны запросить с параметром username
.