flask项目的app文件示例

在pycharm平台上创建flask项目后,可以复制这段代码看一看,了解一下flask

from flask import Flask, current_app, g, request, session, make_response, \
    render_template, redirect, abort, Blueprint

app = Flask(__name__)
# user = Blueprint('users', 'user_view', url_prefix='/users')
# app.register_blueprint(user)


# @app.before_first_request
# def before_first_request():
#     """服务器启动后第一个请求到达"""
#     print("first_request")
@app.route('/index')
def index():
    print(app)
    print(current_app)
    print(app == current_app)
    return 'index'


@app.route('/')
def hello_world():  # put application's code here
    # 访问/时重定向到/index这个页面
    # return redirect('/index')
    #  ip 拦截
    ip_list = ["127.0.0.2"]
    ip = request.remote_addr
    if ip in ip_list:
        abort(403)
    return "hello success"
    # return 'Hello World!'


@app.route('/user/')
@app.route('/user/<page>')
def list_user(page=1):
    return "你好,你是第{}页用户".format(page)


@app.route('/test/req')
def test_request():
    """请求报文联系"""
    get_args = request.args
    print(get_args)
    #  页码一定是正整数
    page = request.args.get('page', 1)
    print(page)
    # 服务器所在的足迹地址
    headers = request.headers
    print(headers)
    print(headers.get('host'))
    # 获取ip地址
    ip = request.remote_addr
    print('远程ip地址')
    print(ip)
    #  获取User-agent
    user_agent = request.headers.get('user-agent', None)
    print("USer_agent:")
    print(user_agent)

    return "request success"




@app.before_request
def per_request():
    """"每一个请求到达之前"""
    print("before_request")


@app.route('/test/resp')
def test_response():
    """"测试响应"""

    # return "response success", 201, {
    #     'user': 123
    # }
    # 构造一个响应对象
    # resp = make_response('这是一个响应对象', 403, {"token": "ABC23"})
    # resp.headers['user_id'] = 123
    # resp.status_code =200
    # 响应html
    html = "<html><body><h1 style = 'color:#f00'>HTML文本显示</h1></body></html>"
    resp = make_response(html)
    return resp


@app.route('/test/html')
def test_html():
    """"从文件中响应html"""
    html = render_template('index.html')
    resp = make_response(html, 400)
    return resp


@app.errorhandler(403)
def forbidden_page(err):
    """你没有权限访问页面"""

    print(err)
    return '你没有权限访问,请联系管理员'


# @user.route("/userDetail/<name>/<age>")
# def userdetail(name, age):
#     return f'我是{name},今年{age}岁'

# # PEP-8
# app.add_url_rule('/home', 'home', hello_world)
#
# print(app.url_map)
# if __name__ == '__main__':
#     app.run()

  • 12
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值