오늘 튜터님께서 한시간 반 정도 아주 유익한 강의를 해주셨다.
들어도되고 안들어도된다고 했지만 당연히 출석...❗
오늘 강의는 내용은
- client - server - db 구조의 초간단 설명
- 로그 찍어보며 왜 이 프로젝트가 동작하는지 설명
통합적으로 보자면 그런것 같다. 이 뿐만 아니라 다른 유용한 것도 많이 알려주셨다.
그래서 잊기전에 빨리 기록하려고 이렇게 이른 시간에 TIL을 작성한다 이런적은 첨이다ㅋㅋ
강의 너무 유용했어요! 감사합니다ㅎㅎ

✅client - server - db 구조
1.서비스란?
쉽게 설명하면:
손님이 가게에 가서 음식을 요청하면 홀에 계신 서버분이
음식을 제공하는데 그것을 보고 우리는 서비스라고 한다.
(=이때 까지 들은 비유 중 제일 이해 쏙쏙)
이제 위 그림을 보면 "웹 서버"란 컴퓨터 인데
클라이언트( 나,브라우저)가 컴퓨터에 정보를 요청(request)를 한다(url형식으로 => 이게 우리의 언어...!)
그러면 서버에서 response를 하는 방식이다.
2.흔히 우리가 하는 페이지 이동?🤔
내가 네이버 메인 페이지에서 카페라는 카테고리에 들어갈려고 마우스를 갖다대면
왼쪽 밑에 이런 URL에 뜨는 것을 볼 수 있따
(첨엔 그냥 보고도 신경도 안썼는데 오늘 강의듣고 이해했다는...ㅋㅋㅋ)
이것을 또 쉽게 설명하자면
내가 저 '카페'카테고리를 들어가기 위해서 아까위에 그림처럼 url로 요청을 한다.(get요청)
그럼 네이버 컴퓨터에서 html을 render한다.(카페에 해당하는 html을 준다)
※render : 주다[제공하다]
3.localhost: 5000
localhost=내컴퓨터
5000 = 포트 ※포트: 항구, 여기서는 서버로 들어갈 수 있는 문을 번호로 매겨놓은 것
내 컴퓨터를 다 오픈 해놓으면 누구나가 다 올 수 있기 때문에
방화벽을 이용하여 다른 사람이 못 들어오게 막아놓고
그중에서 port를 타고 들어오는 사람들은 들어 올 수 있게 한다.
즉, port : 서버로 들어가는 고유의 번호
이제 그리고 localhost에는 여러가지가 있겠지만 그 중에서 내가 만든 app.py가 있을 꺼고
그것을 내가 켜줘야만 입장이 가능하다( 그냥 들어가면 페이지 안뜸!)
그래서 python flask를 이용해서 app.py를 켜주면 페이지가 뜨는 것을 확인 할 수 있다.
flask는 프레임워크다.
framework:개발에 집중하기 위해 미리 다 만들어 놓은 것(즉,app.py와 html만 건드리면 된다는 거)
app.py를 실행시키면 이렇게 터미널에서 모든 로그를 볼 수있다.
저기서 Running은? 돌고 있다 즉= request를 대기하고 있다는 듯
(식당을 가도 알바분들이 주문이 들어올때까지 대기를 하고 있기때문에 그렇게 생각하면 쉬울듯)
✅app.py의 구조
1.route(길,경로)
①get
localhost:5000으로 처음 들어가면
index.html을 나오게 할꺼임!
▷app.route : client가 보낸 요청을 받으면 '어디로 가세요'하고 경로를 정해주는 것
그리고 저 경로대로 가면 def home()을 실행해라 return으로 index.html를 주자
(render_template:은 template을 주자는 의미)
/homework라는 url에 get이라는 메소드로를 하면 homework_get을 실행 하고
fans라는 키에 db에 있던 데이터들을 list형식으로 줄꺼다.
그러면 templates 의 index.html에서
/homework라는 url에서 가져오는 것을 요청할 껏이고
success하면 fans라는 response에 fans가 들어온다.
②post
post도 homework라는 경로와 method가 있다면 들어 올 수 있다.
name_receive는 이제 파이썬에서의 파일 이름이고 ['name_give']는 변수의 이름이라고 생각하면 된다.
그래서
##로그인 시
ID=request.form['id']
로그인 할때 내가 입력해야 하는 id를 받아서 ID라는 곳으로 간다는 거
그러면 이제 클라이언트 쪽에서는 변수의 이름으로
데이터를 전달!😎
✅깨알 지식
**get은 노출이 있고 post는 노출이 없어서 주로 db은 post방식을 많이 사용한다고한다.
노출이 있다는 건? https://naver.com/id=~~~/pw=~~~~뭐 뭐 이런식(이러면 개인 정보가 다 보이니까 안댐)
그래서 get은 간단한 것을 할 때 사용한다
오늘 이렇게 짧지만 굵은 유용한 지식을 많이 얻고 몰랐던 것을 다시 알아가면서 되게 알찬 시간을 보냈다.
그리고 중간중간에 유용한 많은 얘기를 해주셨는데 쫌 있다 다시 녹화본 보면서 놓친부분 상기시킬 예정!
그리고 의지돋게 잘 말씀해주셔서 다시 또 열심히 공부를 할 기운을 얻고 갑니다.🤩
다같이 화이팅...!!!
다음번에도 해주세요 ㅜ 👻
'TIL✨' 카테고리의 다른 글
TIL(11) (0) | 2022.11.14 |
---|---|
CS 기초 TIL(10) (0) | 2022.11.11 |
보자보자 어디보자..TIL(08) (0) | 2022.11.09 |
python....알고리즘....TIL(07) (0) | 2022.11.08 |
자바스크립트 문법 TIL(06)💪 (0) | 2022.11.07 |