Используя python и django, я пытаюсь создать платеж на paypal, используя ресурс для оплаты аккаунта REST API. Все работает, когда я использую завиток. В представлении Django я получаю токен в порядке, но когда я пытаюсь сделать платеж с его помощью, я получаю сообщение об ошибке «Ошибка HTTP 401: Несанкционированное».API Paypal Rest - создание платежа с использованием платежного ресурса PayPal
Вот мой локон, который работает:
curl -v https://api.sandbox.paypal.com/v1/payments/payment -H 'Content-Type:application/json' -H 'Authorization:Bearer ***my_token***' -d '{ "intent":"sale", "redirect_urls":{ "return_url":"http://www.myurl.com", "cancel_url":"http://www.myurl.com"}, "payer":{ "payment_method":"paypal" },"transactions":[{"amount":{ "total":"0.10", "currency":"USD"},"description":"This is the Test payment transaction description."}]}'
Вот мой взгляд Django, что есть проблема, когда:
import urllib2, base64
token = "***my_token***"
values = {
"intent":"sale",
"redirect_urls":{
"return_url":"http://www.myurl.com",
"cancel_url":"http://www.myurl.com"
},
"payer":{
"payment_method":"paypal"
},
"transactions":[
{
"amount":{
"total":"0.10",
"currency":"USD"
},
"description":"This is the Test payment transaction description."
}
]}
data = urllib.urlencode(values)
request1 = urllib2.Request("https://api.sandbox.paypal.com/v1/payments/payment")
base64string = base64.encodestring('%s' % token).replace('\n', '')
request1.add_header("Content-Type", "application/json")
request1.add_header("Authorization", "Bearer %s" % base64string)
result1 = urllib2.urlopen(request1 , data)
response = result1.read()
Другими словами, я пытаюсь сделать завиток работу в моем Посмотреть.
Спасибо.
'request1 = urllib2.Request ("https://www.sandbox.paypal.com/cgi-bin/webscr")' – catherine
@catherine. Я ожидал, что данные json имеют токен, но использование вашего адреса приведет меня к экрану PayPal без какой-либо формы. – user1783848
У меня такая же проблема, любое решение, которое вы нашли? –