Decorator

๊น€ํ•œ์ค€ยท2021๋…„ 7์›” 13์ผ
0

๐Ÿš€ Decorator

๋…๋ฆฝ์ ์ธ HTTP ํ†ต์‹  ๋•Œ๋ฌธ์— ํŽ˜์ด์ง€๊ฐ€ ๋„˜์–ด๊ฐˆ๋•Œ ๋งˆ๋‹ค ์ƒˆ๋กœ์šด ์ธ์ฆ์„ ํ•ด์ค˜์•ผ ํ•œ๋‹ค.
์ƒˆ๋กœ์šด ํŽ˜์ด์ง€์—์„œ ์ธ์ฆ์„ ํ•ด์•ผํ•˜์ง€๋งŒ ์ธ์ฆ ์ฝ”๋“œ๊ฐ€ ๋ชจ๋“  ์ฝ”๋“œ์— ๋ถ™์œผ๋ฉด ์ฝ”๋“œ๊ฐ€ ๋ณต์žกํ•ด์ง€๊ณ  ๊ธธ์–ด์ง„๋‹ค. ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ๊ณผ ๊ฐ„๊ฒฐํ™”๋ฅผ ์œ„ํ•ด ์ธ์ฆ ๊ตฌํ˜„ํ›„ ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค

๐Ÿ”ฅ
import jwt		#ํ† ๊ทผ ์ƒ์„ฑ, encode/decode
import json		#request๋กœ ๋ฐ›๋Š” ๋ฐ์ดํ„ฐ json

๐Ÿ”ฅ
from .models import Account		#๋กœ๊ทธ์ธ์— ํ•„์š”ํ•œ ์œ ์ € ์ •๋ณด๊ฐ€ ๋‹ด๊ธด models
from django.http import JsonResponse	#ํ† ํฐ ๋ฐ ์œ ์ € ํ™•์ธ ํ›„ ๋ณด๋‚ผ response ๋ฉ”์„ธ์ง€๋ฅผ JsonResponse

  • ์ „์†ก๋œ HTTP ์š”์ฒญ์—์„œ "AUTHORIZATION" ๊ฐ’์„ ์ฝ์€ ํ›„ Access Token์„ ์–ป์Œ

  • JWT๋ฅผ ์•”ํ˜ธํ™”ํ• ๋•Œ ์‚ฌ์šฉํ•œ SECRET_KEY์™€ Hash_algorithm์„ ์‚ฌ์šฉํ•˜์—ฌ token์„ ๋ณตํ˜ธํ™”ํ›„ payload๋ณ€์ˆ˜์— ํ• ๋‹น

  • ๋ณตํ˜ธํ™”ํ•œ JWT์˜ ์‚ฌ์šฉ์ž ์ด๋ฆ„์„ ๋ณ€์ˆ˜์— ํ• ๋‹น ํ›„ ์ดํ›„์— ๋น„๊ตํ•  ์‚ฌ์šฉ์ž ์ด๋ฆ„๊ณผ ๋น„๊ตํ•  ๋•Œ ์‚ฌ์šฉ

0๊ฐœ์˜ ๋Œ“๊ธ€