PayPal SDK - AttributeError: объект 'HttpResponse' не имеет атрибута 'get'
Я использую PayPal SDK с Django (Django REST Framework) для создания и регистрации транзакций. Следуя этому руководству я получаю ошибку, указанную в заголовке. Похоже, что self.client.execute(request)
возвращает paypalhttp.http_response.HttpResponse object
, но Django не позволяет мне вернуть это из моего представления. Есть идеи? Спасибо.
возвращает объект paypalhttp.http_response.HttpResponse
Извлеките данные из этого объекта, используя все имеющиеся у него методы. Обычно вы захотите сохранить полученные данные о платеже в своей базе данных (особенно purchase_units[0].payments.captures[0].id
, который является идентификатором транзакции PayPal).
Затем возвращает JSON-ответ вызывающему JS. Начиная с django 1.7 вы можете просто сделать что-то вроде:
from django.http import JsonResponse
data = {
'name': 'Vitor',
'location': 'Finland',
'is_active': True,
'count': 28
}
return JsonResponse(data)
Очевидно, замените data
на фактические данные ответа, которые вы хотите переслать.
JS на стороне клиента должен иметь надлежащую обработку ошибок при получении ответа, см. демонстрационный образец https://developer.paypal.com/demo/checkout/#/pattern/server