session - 데이터를 client 브라우져에 저장해 놓는다. 쿠기와 다르게 flask가 암호화 한다.
암호화를 위해 특정 문자열을 secret_key에 저장해야 한다.
app.secret_key = "hoon"
세션에 값 입력
session['키값'] = 넣고자 하는 값
세션 값 삭제
session.pop("키값",None)
login_id 값이 세션에 있을경우 user_name이 session에서 login_id를 get요청 해서서 받은체로 index.html로 이동
없으면 빈채로 이동
def home():
if "login_id" in session:
return render_template("index.html", user_name=session.get("login_id")
else:
return render_template("index.html", login=False)
로그인 페이지
#get과 post 둘다 작동하는 페이지
@app.route('/login', methods=["GET", "POST"])
def login():
login_succed = "login succed"
input_id = request.args.get("floatingInput")
input_pw = request.args.get("floatingPassword")
login_arr = Get_db.login_confirm(input_id, input_pw)
name = login_arr[0]
login_confirm = login_arr[1]
if login_confirm == login_succed:
session["login_id"] = name
return redirect(url_for("home")), logger.info('로그인 성공')
if request.method == "GET":
if login_confirm != login_succed:
# flash(login_confirm)
# return render_template('login.html')
return render_template('login.html', login_confirm=login_confirm)