404 Ответ при получении баланса счетов Api - PullRequest
0 голосов
/ 18 февраля 2020
import paypalrestsdk
import httpx


class paypal:
    def __init__(self):
        self.secret_id = 'XXXX'
        self.client_id = 'XXXX'

        self.token = ''

    def getToken(self):
        headers = {
            'Accept': 'application/json',
            'Accept-Language': 'en_US',
        }

        data = {
            'grant_type': 'client_credentials'
        }
        response = httpx.post(url='https://api.sandbox.paypal.com/v1/oauth2/token', data=data,headers=headers,auth=(self.client_id,self.secret_id))
        response_data = response.json()
        self.token = response_data['access_token']

    def getBalance(self):
        print(self.token)
        headers = {
            'Content-Type': 'application/json',
            'Authorization': 'Bearer '+self.token,
            'Accept':'application/x-www-form-urlencoded'
        }
        response = httpx.post(url='https://api.sandbox.paypal.com/v2/wallet/balance-accounts', headers=headers)
        print(response.status_code)
        response_data = response.json()
        print(response_data)


        available = response_data['total_available'][0]['value']
        print(response_data)


if __name__ == "__main__":
    s = paypal()
    s.getToken()
    s.getBalance()

Я получаю код 404, я делаю что-то плохое?

    Traceback (most recent call last):
  File "C:/Users/localhost/PycharmProjects/Telegram/paypal/Main.py", line 48, in <module>
    s.getBalance()
  File "C:/Users/localhost/PycharmProjects/Telegram/paypal/Main.py", line 37, in getBalance
    response_data = response.json()
  File "C:\Users\localhost\AppData\Local\Programs\Python\Python37\lib\site-packages\httpx\models.py", line 899, in json
    return jsonlib.loads(self.text, **kwargs)
  File "C:\Users\localhost\AppData\Local\Programs\Python\Python37\lib\json\__init__.py", line 348, in loads
    return _default_decoder.decode(s)
  File "C:\Users\localhost\AppData\Local\Programs\Python\Python37\lib\json\decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Users\localhost\AppData\Local\Programs\Python\Python37\lib\json\decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
404

https://developer.paypal.com/docs/limited-release/balance-accounts/v2/api/

Я также пробую с "Авторизация: Доступ- Токен "Но ответ тот же, я прочитал и искал в документах, я ничего не нашел, и токен доступа fre sh, поэтому я не понимаю, потому что токен доступа, который я получаю, действителен.

...