Python-Flaskルーティング


ルート
from flask import Flask

app = Flask(__name__) 

@app.route("/test") 
def hello():
    return "Hello World!"

""" @app.route("/test") == 127.0.0.1:8080/test
    즉, URL을 정의하며 요청이 들어오면 하위 함수를 실행하여 값을 리턴해준다. """
ルーティングの許可方法
@app.route('/validation', methods=['GET'])

""" 라우팅 데코레이터 인자에 메서드를 정의하면, 해당 메서드만 서버에서 처리하고 아니면 에러를 리턴한다."""
ルーティング-静的ページに戻る
from flask import Flask

app = Flask(__name__)
@app.route("/")
def hello():                           
    return "<h1>Hello World!</h1>"

@app.route("/hello")
def hello_flask():
    return "<h1>Hello Flash!</h1>"

@app.route("/first")
def hello_first():
    return "<h3>Hello First</h3>"

if __name__ == "__main__":              
    app.run(host="127.0.0.1", port="8080")
ルート選択-URIを変数として使用
from flask import Flask

app = Flask(__name__)
@app.route("/first/<username>")
def get_first(username):
    return "<h3>Hello " + username + "!</h3>"

if __name__ == "__main__":              
    app.run(host="127.0.0.1", port="8080")

""" 위와 같이 <> 를 사용하면 웹브라우저를 통해 변수를 넘겨받아 사용할 수 있다. """
ルート選択-URIを使用して変数のデータ型を定義します.
from flask import Flask

app = Flask(__name__)

@app.route("/message/<int:message_id>")
def get_message(message_id):
    return "message id: %d" % message_id   # %d 는 int, %f 는 float, %s 는 string

""" 위와 같이 <int:변수명> 을 사용하면 변수 형태를 정의할 수 있다. 정의하지 않으면 기본 값은 str""" 

if __name__ == "__main__":
    app.run(host="0.0.0.0", port="8080")
ルート選択-変数としてURIを受信して計算する
from flask import Flask

app = Flask(__name__)

def add_file(data):
    return data + 5

@app.route("/first/<int:messageid>")
def get_first(messageid):
    data = add_file(messageid)
    return "<h1>%d</h1>" % (data)

if __name__ == "__main__":
    app.run(host="0.0.0.0", port="8080")