분류 전체보기
-
[Flask] 로그인 기능 만들기 ft.JWT,Token,Cookie,hashlibprogramming/python 2022. 8. 29. 14:24
목차 사전 준비 로그인 로직 고민점(api로 get 요청하는 것, flask데이터로 주는 것 --개인 생각 주의) 토큰과 세션과 쿠키 사전 준비 1. jwt 설치 2. 아이디, 패스워드를 저장(패스워드를 hashlib를 통해 인코딩하여 저장한다) doc = { 'name' : '관리자짱', 'password' : hashlib.sha256('admin12'.encode('utf-8')).hexdigest() #hexdiget-16진수 문자열, digest-바이트문자열 } db_user.inser_one(doc) 로그인 로직 1. 사용자의 아이디와 패스워드를 받아온다. 2. 받아온 패스워드를 해시함수를 통한 암호화 값으로 만든다. 3. db에서 유저를 찾는다. 4. 유저가 있다면 jwt 토큰을 발급한다. ..
-
[내배캠] B-4(Before After조) 미니프로젝트 S.A.내일배움캠프/과제 2022. 8. 26. 17:57
미니 프로젝트 주제 팀원들 소개 블로그 대표 기능 - 팀원 정보 작성 페이지 - 팀원 정보 입력, 저장 - 댓글 기능 - 팀원 정보 가져오기 - 관리자 댓글 삭제 기능 api 명세 수정 보완 후 대표 기능 - 관리자 로그인, 로그아웃 기능 - 댓글 기능 - 관리자 댓글 삭제 기능 - 팀원 정보 입력, 저장, 읽기 기능 api 명세서 기능 Method URL Request Response 비고 관리자 페이지 GET /admin 로그인 페이지 관리자 로그인 POST /admin {'name':name,'password':password} {'result':result, 'token': token} 작성페이지 GET /admin/post 양식 페이지 관리자 작성하기 POST /admin/post {'temp'..
-
[내배캠] 사전과제 왕초보 5주차 개발일지내일배움캠프/과제 2022. 8. 18. 17:32
aws에 가입하여 서버를 대여받고, 가비아에서 도메인을 구매하여 실제로 만든 웹페이지를 호스팅하는 주가 되었습니다. 재미있는 5주차가 아니었나 싶네요. 실제로 제가 만들 프로젝트를 올릴생각에 좋습니다. # python3 -> python sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10 # pip3 -> pip sudo apt-get update sudo apt-get install -y python3-pip sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1 # port forwarding 80번포트로 들어오면 5000번포트로 돌리는 명령어 su..
-
[내배캠] 사전과제 왕초보 3주차 개발일지내일배움캠프/과제 2022. 8. 15. 00:29
3주차에서는 파이썬 기초 문법과 bs4 beutifulSoup을 이용하여 크롤링을 하는 방법, mongoDB를 Python에서 사용할 수 있게 해주는 pymongo dnspython 패키지를 이용하여 저장 변경 등의 내용을 배웠습니다. from pymongo import MongoClient client = MongoClient('여기에 URL 입력') db = client.dbsparta # 저장 - 예시 doc = {'name':'bobby','age':21} db.users.insert_one(doc) # 한 개 찾기 - 예시 user = db.users.find_one({'name':'bobby'}) # 여러개 찾기 - 예시 ( _id 값은 제외하고 출력) all_users = list(db.us..
-
[내배캠] Python으로 기억력 테스트 게임 만들기 ft.나도코딩, pygame내일배움캠프/과제 2022. 8. 10. 13:17
https://www.youtube.com/watch?v=Qsk-xsi73YA&list=PLMsa_0kAjjrdqJ1rJba9MFWYv-GHluK4_ import pygame import random def setup(level): global display_time display_time = 8 - level//3 display_time = max(display_time, 2) number_count = level//3 + 5 number_count = min(number_count, 20) shuffle_grid(number_count) def shuffle_grid(number_count): rows = 5 columns = 9 cell_size = 130 button_size = 110 scree..