[Flask] 정적, 동적 페이지 라우팅
2023. 1. 19. 23:59
정적 페이지 라우팅
from flask import Flask
# Flask 객체를 app에 할당
app = Flask(__name__)
# 정적 페이지 리턴
@app.route("/") # 127.0.0.1:8080
def test():
return "<h1>Hello World!</h1>"
if __name__ == "__main__":
app.run(host="127.0.0.1", port="8080")
127.0.0.1은 localhost를 의미한다.
따라서 127.0.0.1:8080으로 접속하거나 localhost:8080으로 접속하면 아래 화면과 같다.

이처럼 웹 서버에 접속하기 위해서는 포트(port)번호가 필요하다.
하지만 naver.com에 접속할 땐 포트번호를 따로 적어주지 않는다.
naver.com의 url은 https://www.naver.com/ 이다.
https는 뒤에 :443 포트가 자동으로 붙는다. 따라서 https://www.naver.com:443 으로 접속해도 https://www.naver.com 과 같다.
http는 :80 포트가 자동으로 붙는다.
동적 페이지 라우팅
from flask import Flask
app = Flask(__name__)
@app.route('/info/<name>')# 0.0.0.0:8080/info/원하는 값
def get_info(name):
return '<h3>Hello : ' + name + '!</h3>'
if __name__ == '__main__':
app.run(host='0.0.0.0', port='8080')

입력한 url을 변수로 사용할 수 있다.
이 경우는 데이터 타입이 없으므로 문자열로 인식한다.
데이터 타입이 있는 경우는 아래와 같다.
from flask import Flask
app = Flask(__name__)
@app.route('/info/<int:grade>')
def get_message(grade):
return 'grade : %d' % grade # %d : int, %f : float, %s : string
if __name__ == '__main__':
app.run(host='127.0.0.1', port='8080')

'WebFramework > [Flask]' 카테고리의 다른 글
| [Flask] Jinja2 사용법 (0) | 2023.01.20 |
|---|---|
| [Flask] Bootstrap 사용하기 (로그인) (0) | 2023.01.20 |
| [Flask] 간단한 로그인 구현 (HTML, GET) (0) | 2023.01.20 |
| [Flask] GET 사용법 (0) | 2023.01.20 |
| [Flask] httpi 설치 (0) | 2023.01.20 |