21.11.03 7주차 1-1 Flask 시작하기

2021. 11. 3. 16:06작업/Flask

API : 서버와 클라이언트의 통신 규칙과 데이터의 통로 역할을 하는 것

클라이언트는 서버에게 정해진 규칙(URL)로 데이터를 요청한다.

그 응답받는 데이터는 HTML, JSON, XML 등 형태들이 있다.

 

Framework : 미리 작성되어 있는 함수(라이브러리) 이상의 기능을 제공

Flask : python을 사용해서 웹 서버를 만들 수 있게 도와주는 Web Framework

 

Flask로 웹 서버 만들기

1. import 하기

1-1. app = Flask(__name__) 이 파일에서 flask를 이 변수?에 실행시키겠다.

2. @app.route() 함수 내 함수 decorator. 서버에 접속할 수 있는 url을 만들어 준다.

3. @app.route(/) 밑에 def 실행할함수(): return 어쩌구 -> 해당 /url에서 실행할 함수.

4. if __name__ == "__main__": app.run() 지금 현재 실행하는 파일 이름이 main일 떄만 Flask 서버를 실행

 

실습 1 Flask사용하기 Flask(__name) @app.route()

실습 2 Flask로 HTML 띄우기 render_template('html이름')

 

JSON 형식 데이터 생김새

key와 value가 있다.

JSON 형식 데이터 나타내기

실습 3 JSON 데이터 보내기 jsonify()

실습 4 서버에 요청하기 @app.route('/',methods=['GET'])     request.args.get( )

 

 

 

HTML 형식의 데이터를 나타내기

render_template("html파일")

 

여러가지 URL 연결하기

REST API : HTTP URI을 통해 데이터의 자원(source)를 표현하고 HTTP Method(POST, GET, PUT, DELETE)를 통해 해당 자원(데이터)에 대한 CRUP operation을 적용하는 것을 의미한다.

 

HTTP method

GET , POST 둘다 서버에 데이터를 전송함

그러나 GET은 URL ?뒤에 데이터 보내고 POST는 html의 일정한 양식(ex form)에 담아 보냄

GET 방식 사용 .. request.args.get[어쩌구] .. URL뒤에 / 뒤에 ? 뒤에 있는 단어를 받아와서 hello 단어를 보낸다.

 

POST 방식 사용 .. html의 <form> 사용

method = 'post' , 버튼의 type='submit'

GET 방식만 사용