728x90
예제1
Method Filtering 에 대한 예제입니다.
요청을 허용하는 Method 를 지정할 수 있습니다.
from flask import Flask, Response, make_response
app = Flask(__name__)
@app.route('/req', methods=['GET', 'POST'])
def res():
print()
return 'res'
@app.route('/postReq', methods=['POST'])
def pr():
print()
return 'pr'
@app.route('/')
def index():
return 'hello'
if __name__ == '__main__':
app.run(debug=True)
127.0.0.1 - - [20/Aug/2020 19:49:16] "GET /req HTTP/1.1" 200 -
127.0.0.1 - - [20/Aug/2020 19:49:28] "GET /postReq HTTP/1.1" 405 -
127.0.0.1 - - [20/Aug/2020 19:49:48] "POST /postReq HTTP/1.1" 200 -
예제2
URL 에 대한 처리 예제입니다.
예를들어 다음과 같은 경우, 요청한 페이지에 대한 컨텐츠를 반환할 수 있습니다.
from flask import Flask, Response, make_response
app = Flask(__name__)
@app.route('/content/<page>')
def content(page):
return f"{page} page, content"
@app.route('/')
def index():
return 'hello'
if __name__ == '__main__':
app.run(debug=True)
위 같은 상황(Not Found)의 대한 방안으로, Default 는 다음과 같이 사용합니다.
from flask import Flask, Response, make_response
app = Flask(__name__)
@app.route('/content', defaults={'page': '1'})
@app.route('/content/<page>')
def content(page):
print(f"{page}'content")
return f"{page} page, content"
@app.route('/')
def index():
return 'hello'
if __name__ == '__main__':
app.run(debug=True)
예제3
Redirect 처리는 다음과 같이 데코레이터 혹은 함수 내에서 처리할 수 있습니다.
from flask import Flask, Response, make_response
from flask import redirect
app = Flask(__name__)
@app.route('/')
def index():
return 'index'
@app.route('/re', redirect_to='/target')
@app.route('/target')
def target():
return 'ok'
127.0.0.1 - - [20/Aug/2020 21:00:08] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [20/Aug/2020 21:00:17] "GET /re HTTP/1.1" 301 -
127.0.0.1 - - [20/Aug/2020 21:00:17] "GET /target HTTP/1.1" 200 -
from flask import Flask, Response, make_response
from flask import redirect
app = Flask(__name__)
@app.route('/')
def index():
return 'index'
@app.route('/re')
def re():
return redirect('/target')
@app.route('/target')
def target():
return 'ok'
127.0.0.1 - - [20/Aug/2020 21:03:20] "GET /target HTTP/1.1" 200 -
'Application > Flask' 카테고리의 다른 글
파이썬 Flask HTTP Request 파라미터 (0) | 2020.08.20 |
---|---|
파이썬 Flask 폼(Form) 전송 (0) | 2020.07.29 |
파이썬 Flask render_template() 데이터 전달 / for 문 사용 (2) | 2020.07.29 |
파이썬 Flask 리다이렉트(Redirect)와 에러 페이지 (0) | 2020.07.29 |
파이썬 Flask 반응형 템플릿 구해서 고치기 -2 : 리소스 경로잡기(Static Files) (0) | 2020.07.29 |