Reputation: 29805
I'm testing Stripe orders on my local Mac OS X machine. I am implementing this code:
stripe.api_key = settings.STRIPE_SECRET
order = stripe.Order.create(
currency = 'usd',
email = 'j@awesomecom',
items = [
{
"type":'sku',
"parent":'sku_88F260aQ',
"quantity": 1,
}
],
shipping = {
"name":'Jenny Rosen',
"address":{
"line1":'1234 Main Street',
"city":'Anytown',
"country":'US',
"postal_code":'123456'
}
},
)
I receive an error:
Stripe no longer supports API requests made with TLS 1.0. Please initiate HTTPS connections with TLS 1.2 or later.
I am using django 1.10 and python version 2.7.10
How can I force the use of TLS 1.2? Would I do this on the python or django side?
Upvotes: 4
Views: 5963
Reputation: 236
I solved installing this libraries:
pip install urllib3
pip install pyopenssl
pip install ndg-httpsclient
pip install pyasn1
solution from:
Upvotes: 6
Reputation: 11
If you have already tried to update openssl and python (using brew), and still does not work, make sure your settings have DEBUG = False.
Watch this thread for more information https://code.google.com/p/googleappengine/issues/detail?id=13207
Upvotes: 0
Reputation: 29805
This is not a django issue, but operating system and language issue.
I'm using Mac OS X and and a brew version of python. I'm also using virtual env which has its own copy of python and open ssl.
I did the following:
I first downloaded the most recent version of XCode which updates OpenSSL. I then uninstalled and reinstalled brew python. I then updated virtualenv.
Upvotes: 1