SSLV3-Warnungs-Handshake-Fehler (_ssl.c:590)?

SSLV3-Warnungs-Handshake-Fehler (_ssl.c:590)?

das ist mein Code:

def test(request):
paypalrestsdk.configure({
  "mode": "security-test-sandbox",
    "client_id": "XXXXXXX-XXXX-XXXX-XXXX",
    "client_secret": "XXXXXXX-XXXX-XXXX-XXXX"  })

payment = paypalrestsdk.Payment({
  "intent": "sale",
  "payer": {
    "payment_method": "credit_card",
    "funding_instruments": [{
      "credit_card": {
        "type": "visa",
        "number": "4417119669820331",
        "expire_month": "11",
        "expire_year": "2018",
        "cvv2": "874",
        "first_name": "Joe",
        "last_name": "Shopper" }}]},
  "transactions": [{
    "item_list": {
      "items": [{
        "name": "item",
        "sku": "item",
        "price": "1.00",
        "currency": "USD",
        "quantity": 1 }]},
    "amount": {
      "total": "1.00",
      "currency": "USD" },
    "description": "This is the payment transaction description." }]})

if payment.create():
  print("Payment created successfully")
else:
  print(payment.error)
return render(request, "test.html")

Beim Ausführen des Befehls payment.create() tritt der folgende Fehler auf: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:590). Ich verwende einen Mac. Bitte sagen Sie mir, warum?

Antwort1

Ich hatte das gleiche Problem. Das hier habe ich herausgefunden und so habe ich es behoben:

Die von Apple bereitgestellte Python-Version ist in Bezug auf OpenSSL veraltet. Sie können Ihre Version testen, indem Sie ins Terminal gehen:

python
>>> import ssl
>>> print ssl.OPENSSL_VERSION
OpenSSL 0.9.8zh 14 Jan 2016

Oben ist die fehlerhafte Version. Eine Lösung besteht darin, eine neue Version von Python zu installieren. Der einfachste Weg ist wahrscheinlich, Homebrew alshier beschrieben.

Unten sehen Sie etwas Ähnliches, wie Sie es mit einer aktualisierten Version von Python sehen sollten. Dann funktioniert paypalrestsdk.

python
>>> import ssl
>>> print ssl.OPENSSL_VERSION
OpenSSL 1.0.2h  3 May 2016

verwandte Informationen