python flask路由重要知识点

阅读:450 2019-03-19 15:07:34 来源:新网

#codingutf8#flask初始化fromflaskimportflask,request,current_app,app,make_response,render_template,redirect,abort,session,jsonifyapp=flask(__name__)#jsonify返回的json串支持中文支持

app.config['json_as_ascii']=false#修饰器注册路由app.route@app.route("/")defindex():result={'status':"200",'data':'hello,world!',}returnjsonify(result)#通过add_url_rule函数注册路由defindex2():return'index2'app.add_url_rule('/index2',view_func=index2)#渲染模板,默认保存在templates目录下@app.route("/tem")deftem():returnrender_template('/tem.html',message='badusernameorpassword',title="title")#指定传输方式@app.route('/user',methods=['post','get'])defv_users():ifrequest.method=='get':return...#返回用户列表ifrequest.method=='post'return...#创建新用户@app.route("/name/")defname(name):#returnname#return"

"+name+"

"#ifnotname:#abort(404)return"

%s

"%len(name)@app.route("/req/")defreq():users_agent=request.headers.get('user-agent')host=request.headers.get('host')appname=current_app.namereturnusers_agent+""+host+""+appname#调试信息@app.route("/debug/")defdebug():#app.logger.debug('avaluefordebugging')app.logger.warning('awarningoccurred(%dapples)',42)#app.logger.error('anerroroccurred')#获取当前的请求方式app.logger.debug(request.method)#getapp.logger.debug(request.path)#/debug/#获取包含域名的完整url地址app.logger.debug(request.url)#http://127.0.0.1:5000/debug/#获取当前所有的路由信息app.logger.debug(app.url_map)return"调试信息输出控制台"#重定向到百度@app.route("/baidu/")deffunction():returnredirect("http://www.baidu.com")#cookies设置@app.route("/setcookies/")defsetcookies():res=make_response("设置namecookies")#通过max_age控制cookie有效期,单位:秒res.set_cookie("namecookies",'testcookies',max_age=3600)returnres#获取cookies@app.route("/getcookies/")defgetcookies():returnrequest.cookies.get('namecookies')#删除cookies@app.route("/delcookies/")defdelcookies():res=make_response("删除namecookies")res.delete_cookie("namecookies")returnresimportosapp.secret_key=os.urandom(24)#设置session@app.route("/setsession/")defsetsession():session['sessioninfo']="sessiondemo"return"session设置成功"#获取session@app.route("/getsession/")defgetsession():returnsession['sessioninfo']#删除session@app.route("/delsession/")defdelsession():session.pop('sessioninfo',none)return"session删除成功"#自定义404错误@app.errorhandler(404)defpage_not_found(e):return'404'#自定义500错误@app.errorhandler(500)definternal_server_error(e):return'500'#启动程序if__name__=='__main__':app.run(host='0.0.0.0',port=80,debug=true)

相关文章
{{ v.title }}
{{ v.description||(cleanHtml(v.content)).substr(0,100)+'···' }}
你可能感兴趣
推荐阅读 更多>
推荐商标

{{ v.name }}

{{ v.cls }}类

立即购买 联系客服