Я использую библиотеку slython для вызова HTTP-сервиса. Вот как это выглядит. Мне нужно сделать запрос для этого URL https://sample-billing-api.test/2/billing-accounts? Id = 2169.
Когда я запускаю это, я получаю сообщение об ошибке NameError: имя "учетные записи" не определено.
import slumber
class ParseAuth(AuthBase):
def __call__(self, r):
r.headers['x-api-key'] = '<API KEY>'
r.headers['Content-Type'] = 'application/json'
return r
api = slumber.API('https://sample-billing-api.test/2/', append_slash=False, auth=ParseAuth())
response = api.billing-accounts.get(id=2169)
api.billing-accounts.get(id = 2169) не работает.
Одним из решений является переход на пакет запросов python, как-то вроде этого. Этот подход работает. Но мне нужно использовать пакет slumber, поскольку я использую пакет Slumber для всех вызовов API. Кроме того, я написал декораторов для обработки отклика.
import requests
headers = {
'x-api-key': '<api_key>',
'Content-Type': 'application/json'
}
with requests.session() as s:
res = s.get(
'https://sample-billing-api.test/2/billing-accounts?id=2169',
headers=headers
)
s.close()
Заранее спасибо.
Это решение получилось окончательно...
import slumber
class ParseAuth(AuthBase):
def __call__(self, r):
r.headers['x-api-key'] = '<API KEY>'
r.headers['Content-Type'] = 'application/json'
return r
api = slumber.API('https://sample-billing-api.test/2/', append_slash=False,
auth=ParseAuth())
response = getattr(self.api, "billing-accounts").get(id=2169)
-