[PROD JECT]WETCHAPEDIA後期
プロジェクトの概要
テーマ
期間
開発者
Front-end:4人
崔炳賢、安在宇、チョン・チャンミン、チョン・ジファン.
Back-end:3人
張載沅朴大賢朴敏静
デモビデオ
🔥 動画リスト 🔥
テクノロジーの使用
コラボレーションツール
Front-end
Back-end
分担機能実施
朴大賢.
朴敏静
張載沅
記憶に残るコード
login token認証decorter
import re, jwt
from django.http import JsonResponse
from django.conf import settings
from users.models import User
def login_decorater(func):
def wrapper(self, request, *args, **kwargs):
try:
access_token = request.headers.get("Authorization", None)
payload = jwt.decode(access_token, settings.SECRET_KEY, settings.ALGORITHM)
user = User.objects.get(id = payload["user_id"])
request.user = user
except jwt.exceptions.DecodeError:
return JsonResponse({"message" : "INVALID_TOKEN"}, status = 400)
except User.DoesNotExist:
return JsonResponse({"message" : "INVALID_USER"}, status = 400)
return func(self, request, *args, **kwargs)
return wrapper
import re, jwt
from django.http import JsonResponse
from django.conf import settings
from users.models import User
def login_decorater(func):
def wrapper(self, request, *args, **kwargs):
try:
access_token = request.headers.get("Authorization", None)
payload = jwt.decode(access_token, settings.SECRET_KEY, settings.ALGORITHM)
user = User.objects.get(id = payload["user_id"])
request.user = user
except jwt.exceptions.DecodeError:
return JsonResponse({"message" : "INVALID_TOKEN"}, status = 400)
except User.DoesNotExist:
return JsonResponse({"message" : "INVALID_USER"}, status = 400)
return func(self, request, *args, **kwargs)
return wrapper
settings.SECRET_KEY, settings.ALGORITHM
ALGORITHM、SECRET KEYなどの環境変数をmy settingsに設定します.pyファイルで管理していますviewspyまたはmodel.pyから直接インポートするにはmy settingsを使用します.pyファイルに依存します.他の方法で管理すると、すべてのコードを変更する必要があるという問題が発生します.
したがって、django confからsettingsをロードするには、「from django.conf import settings」を作成する必要があります.
access_token
HTTPリクエストヘッダで許可されている値を取得し、ない場合はNoneに移動します.
request.user
ポスト
最初のチームプロジェクトから、私の実力不足がチームに損失をもたらすのではないかと心配しています.しかし、良いチームメンバーに出会って、自信を持って、最も重要なのは楽しくプロジェクトを行う雰囲気で、自分をもっと努力させます.
良い雰囲気の中で、スムーズにコミュニケーションが取れます.そのため、みんなが頑張って楽しくプロジェクトができるように、お互いに相手の意見を聞いて、明るく表現しようと努力しています.私だけでなく、すべての人がそうしたので、スムーズなコミュニケーションができます.
全体的にコミュニケーションがスムーズな自信がありますが、その中でも私の自信不足でコミュニケーションの問題が発生したことがあります.自分が担当しているAPIをクリアしたとしても、残りのAPI領域を分担したいという言葉を目にすることができませんでした.みんな自分がうまくやっていると思っているので、分担のスピードが足りなくて、仕事が遅くなったらどうするか心配です.しかし、自分に余裕がある様子を見て、指導者のアドバイスを通じて、チームメンバーとコミュニケーションし、お互いの進捗状況を確認し、残りの機能を分担して実現することができます.この過程で、指導者がコミュニケーションが悪いと言っているのを聞いたが、みんなが楽しくないと思って、お互いに理解して、残りを分かち合って、一緒に何をしたらいいか考えて、もう少しで泣きそうになった.2回目は、自分に自信を持って、もっと多様な機能を実現してみたいと思います.
前述したように,他の人に比べて斬新で多様な機能は実現されていない.その部分はちょっと残念ですが、まあまあだと思います.復習してもいいです.私が書いたコードですが、理解できないところもあります.この点をもっと理解して、コードを書いてみました.他の人が書いたコードから新しい機能を知り、この部分を単独で学びたいと思っています.
良い人と会って行うプロジェクトなので幸せで複雑で微妙な感じです.本当に良かったですし、2回目の時もたくさんのことを学び、幸せにプロジェクトを進めたいと思います.
Reference
この問題について([PROD JECT]WETCHAPEDIA後期), 我々は、より多くの情報をここで見つけました
https://velog.io/@doniminp/PROJECT-WETCHAPEDIA-후기
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
Reference
この問題について([PROD JECT]WETCHAPEDIA後期), 我々は、より多くの情報をここで見つけました https://velog.io/@doniminp/PROJECT-WETCHAPEDIA-후기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol