flask_1.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return '<h1>hello world</h1>'
app.run()
flask_2.py
from flask import Flask
app = Flask(__name__)
# @app.route('/hello',method=['GET','POST'])
# def hello():
# return 'hello world'
#
# @app.route('/hi',method=['POST'])
# def hi():
# return 'hi hi'
# string 不接受任何不包含斜杆的文本
# float 接受正浮点数
# int 接收正整数
# path 接收包含斜杠的文本
@app.route('/user/<id>')#@app.route('/user/<float:id>')
def index(id):
if id=='1':
return 'python'
if id==str(2):
return 'django'
if int(id)==3:
return 'flask'
return 'hello world'
app.run()
form表单.py
from flask import Flask,render_template
app=Flask(__name__)
@app.route('/index',methods=['GET','POST'])
def index():
return render_template('index.html')
app.run()
index.html(用例)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="">
账号:
<input type="text" name="name">
<br>
密码:
<input type="password" name="password">
<br>
<input type="submit" name="submit">
</form>
</body>
</html>
request对象.py
#requst包含前端发送过来的所有数据
from flask import Flask,render_template,request
app=Flask(__name__)
@app.route('/index',methods=['GET','POST'])
def index():
if request.method == 'GET':
return render_template('index.html')
if request.method == 'POST':
name=request.form.get('name')
password=request.form.get('password')
print(name)
print(password)
return 'this is POST'
app.run()
自定义转换器.py
from werkzeug.routing import BaseConverter
from flask import Flask
app = Flask(__name__)
class RegexConverter(BaseConverter):
def __init__(self,url_map,regex): #重命名map->url_map url_
super(RegexConverter,self).__init__(url_map)# 或者 super().__init__(url_map)
self.regex = regex
def to_python(self,value):
print('to_python方法被调用')
return value
#将自定义的转换器添加到flask应用中
app.url_map.converters['re'] = RegexConverter
@app.route('/index/<re("123"):value>')
def index(value):
print(value)
return 'hello'
app.run()
响应格式.py
from flask import Flask,make_response,json,jsonify
app=Flask(__name__)
app.config['JSON_AS_ASCII']=False
@app.route('/index')
def index():
data={
'name':'张三'
}
# response=make_response(json.dumps(data,ensure_ascii=False))
# response.mimetype='application/json'
# return response
return jsonify(json.dumps(data,ensure_ascii=False))
app.run()