|
@@ -19,6 +19,7 @@ from django.views.generic import TemplateView
|
|
|
from django.shortcuts import render_to_response
|
|
|
from django.http import JsonResponse
|
|
|
from object.ResObject import ResObject
|
|
|
+from urllib.parse import urlencode
|
|
|
import subprocess
|
|
|
import uuid
|
|
|
# from gevent.pool import Pool
|
|
@@ -131,6 +132,7 @@ class oa2TokenView(TemplateView):
|
|
|
code = request_dict.get("code", None)
|
|
|
client_id = request_dict.get("client_id", None)
|
|
|
refresh_token = request_dict.get("refresh_token", None)
|
|
|
+ redirect_uri = request_dict.get("redirect_uri", None)
|
|
|
from var_dump import var_dump
|
|
|
logger = logging.getLogger('django')
|
|
|
logger.info('token-------------begin')
|
|
@@ -148,6 +150,22 @@ class oa2TokenView(TemplateView):
|
|
|
print('client_id:')
|
|
|
print(client_id)
|
|
|
user_qs = UserModel.objects.filter(code=code)
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ payload = {
|
|
|
+ 'grant_type': 'authorization_code',
|
|
|
+ 'code': code,
|
|
|
+ 'client_id': 'amzn1.application-oa2-client.efb07b51dd444f848b6f0598635da3cc',
|
|
|
+ 'client_secret': '8a49390ebe362bfee153be87587f5673d0c1d8aeb6bc1ef736fda6c9d5d81c8f',
|
|
|
+ 'redirect_uri': redirect_uri
|
|
|
+ }
|
|
|
+ self.post_to_api(payload)
|
|
|
+
|
|
|
+
|
|
|
if not user_qs.exists():
|
|
|
user_qs = UserModel.objects.filter(refresh_token=refresh_token)
|
|
|
if user_qs.exists():
|
|
@@ -173,6 +191,19 @@ class oa2TokenView(TemplateView):
|
|
|
print(res_json)
|
|
|
return JsonResponse(res_json)
|
|
|
|
|
|
+ def post_to_api(self, payload):
|
|
|
+ connection = http.client.HTTPSConnection("api.amazon.com")
|
|
|
+ headers = {
|
|
|
+ 'content-type': "application/x-www-form-urlencoded",
|
|
|
+ 'cache-control': "no-cache"
|
|
|
+ }
|
|
|
+
|
|
|
+ response = requests.post('https://api.amazon.com/auth/o2/token', urlencode(payload), headers= headers, allow_redirects=True)
|
|
|
+ request_json = response.json()
|
|
|
+ logger = logging.getLogger('django')
|
|
|
+ logger.info('------------this is get_access_token')
|
|
|
+ logger.info(request_json)
|
|
|
+
|
|
|
|
|
|
import threading
|
|
|
|