J'essaie de créer une authentification pour récupérer des informations à partir d'une API. Je crée quelque chose comme ça:

def get_movies(self):
    """Get api data"""
    url = '{}/Get_Cinema_Filmes?AUTENTICACAO={"USUARIO":user,"SENHA":pass}'.format(self.url)
    return requests.get(url).json()

Je sais que je peux faire quelque chose comme request.get(url, auth=...), mais je ne sais pas comment faire dans ce cas.

Le problème ici est cette partie AUTENTICACAO={"USUARIO":user,"SENHA":password}. Je ne sais pas comment passer les paramètres d'utilisateur et de mot de passe avec ce format.

Existe-t-il un moyen de le faire en utilisant BasicAuth ou même oAuth?

0
Di Santi 18 mars 2019 à 23:48

2 réponses

Meilleure réponse

J'ai donc fait l'auth de cette façon. Ça marche!

def get_movies(self):
    """Get api data

    """
    url  = '{}/Get_Cinema_Movies'.format(self.url)
    auth = '{"AUTH":{"USER":"user","PASS":"password"}}'

    return requests.post(url, data=auth).json()
0
Di Santi 21 mars 2019 à 01:24

Utilisation de l'authentification de base:

username = "fred"
password = "secret"
auth = (username, password)
return requests.get(url, auth=auth)
1
John Gordon 18 mars 2019 à 20:53