将接口数据返回至html前端页面有两种方法
方法一:
1 @app.route('/index',methods=['get'])2 defopen_index():3 page=open('my_index.html',encoding='utf-8');——---->打开当前文件下的my_index.html(这个html是你自己写的)4 res=page.read()------>读取页面内容,并转义后返回5 return res;
方法二:
1 from flask importFlask,render_template,request2
3 app = Flask(__name__)4
5
6 #@app.route('/index')
7 @app.route('/index/')8 defhello_world(username):9 return render_template('hello.html',username=username);------------>其中hello.html文件在temaplte文件夹下10
11
12 if __name__ == '__main__':13 app.run(debug=True);
*与第一种方式的有点在于可以自动转义,第一种方式要手动转义,不方便
* rendr_template中第一个参数是要打开的文件,通常是html文件
*render_template中第二个参数:username=username,第一个username是html中的变量,第二个username是index函数中的值,将这个值赋予html中的变量展示
*同理,render_template中可以指定第三个参数,第....个参数
*在html中的变量,用{{}},如{{username}},必须要和index中指定的html变量名一模一样,否则无法正确获取变量的值展示
*总而言之,render_template功能是对先引入html,同时根据后面传入的参数,对html进行修改渲染。
我的html页面内容如下
1
2
3
4
5
这是我的主页6
7
{{username}}------>变量,必须要和index函数中给html的变量参数名一模一样,否则调取无效
8 这是我的主页9
10
11
12