123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- from django.shortcuts import render
- from django.http import HttpResponse, HttpResponseRedirect
- from SampleApp import config
- from testOpenId.openid_api import OpenID_CLIENT
- from rest_framework.views import APIView
- from rest_framework.response import Response
- from rest_framework import authentication, permissions
- from django.contrib.auth.models import User
- authorization_url = config.OpenID_SERVER + config.OpenID_AUTHORIZATION_URL
- token_url = config.OpenID_SERVER + config.OpenID_TOKEN_URL
- # Create your views here.
- def home(request):
- url = authorization_url+"?client_id="+ config.OpenID_CLIENT_ID+"&response_type=code&redirect_uri="+config.OpenID_CALLBACK_URL
- return render(request, 'testOpenId/auth_link.html', {'url':url})
- def exchange(request):
- # import pdb;pdb.set_trace()
- code = request.GET.get('code').strip(),
- obj = OpenID_CLIENT()
- response = obj.get_access_token(code)
- print(response)
- return render(request, 'testOpenId/displaytoken.html', response)
- class GetAccessToken(APIView):
- permission_classes = (permissions.AllowAny,)
- def get(self, request, format=None):
- code = request.GET.get('code').strip()
- obj = OpenID_CLIENT()
- response = obj.get_access_token(code)
- return Response(response)
- class GetRefreshToken(APIView):
- permission_classes = (permissions.AllowAny,)
- def get(self, request, format=None):
- refresh_token = request.GET.get('refresh_token').strip(),
- obj = OpenID_CLIENT()
- response = obj.get_refresh_token(refresh_token)
- return Response(response)
|