본문 바로가기
카테고리 없음

로그인 페이지 코드 해설

by abccoco 2022. 5. 17.

 

db와 js를 python으로 연동하는 코드를 보도록 하자!

 

 

 

 

 

'/login'은 locallhost 뒤에 붙는 url주소이다. methods는 post 형식이다

@app.route('/login', methods=['POST'])
def login():
    data = json.loads(request.data)

email과 password안에 get방식으로 "email"과 "password"을 넣는다

위의 data = json 코드가 있기 때문에 get을 사용해 데이터를 가져 올 수 있게 된다

pw_hash 안에는 hash 함수를 넣어준다

email = data.get("email")
    password = data.get("password")
    pw_hash = hashlib.sha256(password.encode('utf-8')).hexdigest()

위의 email,password 값이 none라면 아니라는 메세지를 보낸다

    if result is None:
        return jsonify({"message": "아이디나 비밀번호가 옳지 않습니다"}),

json 형식으로 _id 정보를 메세지에 넣기 위해 str을 사용한다

토큰 유효시간 24시간

    payload = {
        'id': str(result["_id"]),
        'exp': datetime.utcnow() + timedelta(seconds=60 * 60 * 24)
    }

????????

    token = jwt.encode(payload, SECRET_KEY, algorithm='HS256')

json형태로 메세지와 토큰을 보내준다

    return jsonify({"message": "success", "token": token})

댓글