Flask

이상우·2021년 12월 19일
0

웹 서버의 동작 과정

클라이언트: 사용자/내 컴퓨터/크롬 등 서버: 클라이언트로부터 요청을 받아서 처리해 주고, '응답'으로 데이터를 돌려주는 곳

클라이언트가 서버로 요청을 하고, 요청을 받은 서버는 요청에 해당하는 데이터를 응답으로 돌려주게 된다.
서버의 응답으로 클라이언트가 보게 되는 데이터는 HTML, JSON, XML등 다양한 형태가 될 수 있다.

프레임워크(Framework)란?
하나의 결과물을 만들기 위해서 제공하는 '틀'
미리 작성되어 있는 함수(라이브러리) 이상의 기능을 제공

Flask란?

파이썬을 사용해서 웹 서버를 만들 수 있게 도와주는 웹 프레임워크이다.
파이썬을 사용하는 프레임워크는 여러가지가 존재한다.
Django - 사용할 수 있는 기능이 많다.
Flask, Pyramid, Bottle - 기본적인 기능만 제공

Flask 장점
1. 서버를 쉽게 작성할 수 있다.
2. 간단한 코드로 빠르게 실행 할 수 있다.
3. 원하는 기능을 유연하게 확장하기 편리하다.

  • html을 화면에 전달하기 위해서는 html파일은 위의 그림처럼 templates라는 폴더 아래에 넣어 주어야한다.
  • templates폴더에 html파일을 넣어 놓으면 Flask가 자동으로 찾아서 연결해 준다.
from flask import Flask, render_template
app = Flask(__name__)

@app.route("/")
def main():
	return render_template("index.html")
    
if __name__=="__main__":
	app.run()
  • Flask 패키지에서 Flask와 render_template를 import한다.
  • render_template라는 함수는 templates라는 폴더안의 html파일을 불러와 주는 역할을 한다.
  • templates폴더 내의 html파일의 이름과 render_template()안의 이름이 같아야 화면에 전달할 수 있다.
  • @app.route("URL주소") URL주소라고 되어있는 부분은 우리가 만들어 줄 수 있는 url주소이다.
  • 1개의 @app.route는 1개의 함수와 연결될 수 있다.
  • @app.route를 여러 개 사용해서 다양한 url을 만들 수 있다.

REST API란?

HTTP URI(Uniform Resource Identifier)를 통해 자원을 명시하고, HTTP Method(POST, GET, PUT, DELETE)를 통해 해당 자원에 대한 CRUD(Create, Read, Update, Delete) Operation을 적용하는 것

  • 다양한 클라이언트가 생겨남에 따라서 REST API가 필요하다.
  • REST API는 메세지가 의도하는 바를 URL에서 나타내므로, 쉽게 기능을 파악할 수 있다.
  • HTTP 표준 프로토콜에 따르는 플랫폼에서 사용 가능하다.
  • 서버와 클라이언트의 구분을 명확하게 할 수 있다.
  • REST API의 표준이 존재하지 않는 단점이 있다.

HTTP Method의 GET/POST 개념
GET/POST 는 HTTP Method 중 하나이다. GET은 데이터를 URL 뒤에 ?와 함께 사용하고, POST는 특정 양식(form)에 데이터를 넣어 전송하는 방법이다.

profile
구상한것을 구현할 수 있는 개발자가 되고 싶습니다.

0개의 댓글