카카오 로그인

이영주·2020년 12월 13일
0

access_token = request.headers.get('Authorization')
response     = request.get(
            'http://kapi.kakao.com/v2/user/me',
            {'Authorization':'Bearer' + access_token}).json()
email        = data['email']
user, flag   = User.objects.get_or_create(email=email)
	if not flag:
                token        = jwt.encode({'id':user.id}, SECRET_KEY_JWT, ALGORITHM)
                access_token = token.decode('utf-8')
                return JsonResponse({'accessToken':access_token}, status=200)
            return JsonResponse({'message':'Success'}, status=200)
        except ValueError:
            return JsonResponse({'message':'Invalid_token'}, status=400)

request

프론트에서 준 headers의 토큰을 받아서 {AUthorization: bearer + 토큰}의 양식으로 request를 보낸다.

get_or_create

email계정이 있으면 get, 존재하지 않으면 create해준다.

json()

json response일 경우 딕셔너리 타입으로 바로 변환

4개의 댓글

comment-user-thumbnail
2020년 12월 13일

당신 천재야..

1개의 답글
comment-user-thumbnail
2020년 12월 13일

와... 성장했다...

1개의 답글