flask框架——接口路由

安装

from flask import Flask

接口路由

1) 根路由

 1 from flask import Flask
 2 
 3 # 创建flask应用实例
 4 app = Flask(__name__)
 5 
 6 @app.route("/")
 7 def index_page():
 8     return "index page"
 9 
10 if __name__ == "__main__":
11     app.run()

2) 定义接口路由传参类型

  •    定义了一个路由"/index/<int:id>",捕获URL中 /index/ 后面的int类型,并将其作为一个变量 (id) 传递给视图函数,最后在页面上显示出来。
 1 from flask import Flask
 2 
 3 app = Flask(__name__)
 4 
 5 @app.route("/index/<int:id>")
 6 def find_id(id):
 7     return  f'id是:{id}'
 8 
 9 if __name__ == "__main__":
10     app.run()
  • 定义了一个路由"/path/<path:subpath>",捕获URL中 /path/ 后面的任意子路径,并将其作为一个变量 (subpath) 传递给视图函数,最后在页面上显示出来;
  • path:是一种转换器类型, 它可以匹配包含斜杠 (/) 的任意字符串;
  • escape() 函数:用于对HTML进行转义,subpath 是来自用户输入的URL。如果用户输入的是恶意脚本,被浏览器执行,会造成跨站脚本(XSS)攻击;

 

from flask import Flask

app = Flask(__name__)

@app.route('/path/<path:subpath>')
def show_subpath(subpath):
    # show the subpath after /path/
    return f'Subpath {escape(subpath)}'

if __name__ == "__main__":
    app.run()

3)接口路由重定向

from flask import Flask

app = Flask(__name__)

# /about/:有尾部斜杠,Flask 会重定向不带斜杠的请求
@app.route('/about/')
def about_page():
    return "<p>About</p>"

# /about:没有尾部斜杠,Flask 会拒绝带斜杠的请求
@app.route('/about')
def page():
    return "<p>About</p>"

if __name__ == "__main__":
    app.run()

4)传入请求方法

from flask import Flask

app = Flask(__name__)

@app.route("/hello",methods=["GET"])
def hello_world():
    return "<p>Hello, World!</p>"

@app.route("/index/<username>",methods=["POST"])
def input_username(username):
    return  f'username是:{escape(username)}'

@app.route("/put",methods=["PUT"])
def put():
    return 'this is put methods'


@app.route("/delete",methods=["DELETE"])
def delete():
    return 'this is delete methods'


@app.route("/able",methods=["GET","POST"])
def able():
    if request.method == "GET":
        return "<p>GET</p>"
    else:
        return "<p>POST</p>"

if __name__ == "__main__":
    app.run()

 

 

 

posted @ 2025-08-21 10:19  Alieen617  阅读(5)  评论(0)    收藏  举报