flask web app 에 login 기능추가하기
조회수 1605회
현재 가지고 있는 예제는 없습니다ㅜㅜ flask로 web 을 작성하려는데 flask-login이나 기타 flask에서 제공하는 login 모듈을 사용하지 않고 처음부터 작성해서 login 기능을 만들고 쿠키가 아닌 session으로 로그인 관리하여 db랑 연동해야되는데 쉬운 예제 하나만 만들어주실 수 있을까요...
1 답변
-
저는 flask에 있는 session 기능을 이용해서 로그인을 구현했었어요..
허접하지만 session[id]=True/False로 구분지어서 True일때만 로그인 기능 유지하도록 했었는데, 아래 로직 입니다. 도움되셨으면 좋겠네요.
from flask import session, request, jsonify from db import Login #유저 생성 @flask.route('/users', methods=['POST']) def UserCreate(): id = request로 id pw = request로 pw #디비에 유저 저장. db_session.add(Login(Id=id, Password=pw)) db_session.commit() return jsonify(Ture) #로그인 @flask.route('/users/login', methods=['POST']) def UserLogin(): id = request로 id pw = request로 pw #디비 데이터와 id,pw 비교 #맞으면 session 생성 if 디비일치: session[id]=True # 로그아웃 때 False return jsonify(True) else: return jsonify(False) #로그아웃 @flask.route('/users/logout', methods=['POST']) def UserOut(): id = request로 넘어온 로그 아웃 id session[id]=False return jsonify(True) #유저 확인 @flask.route('/user/restore', methods=['POST']) def UserCheck(): id = request로 넘어온 활동중인 id #session이 True 이면 계속 False이면 제한.
-
(•́ ✖ •̀)
알 수 없는 사용자
- 제가 sqlachemy나 작업에 필요한 문법을 거의 모르는 1달좀 넘음 완전 초보인데요 flask에서 render template해서 가져온 html양식에서 아이디 비빌번호를 입력하면 저장되어있는 db의 데이터랑 비교하여 일치하면 로그인하고 아닐 시 다시 로그인 시도해주세요라고 뜨게끔 하고싶구요 db 저장은 암호화해서 저장시켜야되는데 예를 들어 비밀번호를 qwe123으로 입력했을 때 12ajnfnwue0128njsod....이런식으로.... 제가 db에 연결할 줄도 모르고 할줄아는게 flask 화면만 열어서 render_template으로 html문서 연결하는 게 끝입니다 post get 도 잘 못하구요...상세하게 설명해주실 수 있을까요? 김재민 2019.5.15 08:35
- 답변이 늦었습니다ㅠ , 저도 초보라서 위 답변 이상은 힘드네요.. 그리고 구글 검색창에 flask post, get만 처도 블로그에 아주 자세하게 나오네요.. 제가 설명할 수 있는 것 이상으로요ㅎ 알 수 없는 사용자 2019.5.20 13:38
-
댓글 입력