Flask:redirect()函数
Windows 10家庭中文版,Python 3.6.4,Flask 1.0.2
重定向,就是在客户端提交请求后,本来是访问A页面,结果,后台给了B页面,当然,B页面中才有需要的信息。
在Flask中,使用redirect()函数实现重定向功能,函数原型如下:
flask.redirect(location, code=302, Response=None)
参数说明:
location是一个链接地址,可以使用url_for()函数得到,也可以是静态文件地址,测试了模板文件的地址,失败——看来模板还是挺安全的;
code可以取值为301、302、303、305、307,默认302,300、304不可以;
Response是一个响应类,默认是werkzeug.wrappers.Response,而flask.Response是werkzeug.wrappers.Response的子类——在写文前测试了好多次使用Response这个参数,现在才知道,这是一位类,不是一个对象,就保持默认吧——为什么要更改呢?怎样的更改是好的?;
下面是我的测试代码及页面:
# flask.redirect(location, code=302, Response=None) test
@app.route('/rd0')
def rd0():
return redirect('the value in rd0') @app.route('/rd1')
def rd1():
return redirect(Response('the value in rd1')) @app.route('/rd11')
def rd11():
return redirect('rdtest', 302, Response=Response('the value in rd11'))
#return redirect('rdtest', 302, Response) # 更改为此行代码了才可以正常 @app.route('/rd2')
def rd2():
return redirect(url_for('hello')) @app.route('/rd3')
def rd3():
return redirect('/static/static1.html') @app.route('/rd31')
def rd31():
return redirect('/templates/tmpt1.html') @app.route('/rd4')
def rd4():
return redirect(url_for('hello'), 307)
各个链接的测试页面:
/rd0


/rd1


/rd11


将rd11()的12行代码注释掉、取消地13行代码注释,测试页面如下:这次传了正确的参数,没有发生服务器错误了!

/rd2

/rd3

/rd31


/rd4


絮叨:
初步掌握这个重定向函数了,花了近一个半小时啊!中间遇到的问题又让自己进步了,开心!尤其是看英文文档的功力——看着文档都把参数类型搞错了!
Flask:redirect()函数的更多相关文章
- Flask框架函数
title: flask学习笔记 subtitle: 1. flask框架函数 date: 2018-12-14 10:17:28 --- Flask学习 学习Miguel Grinberg的2017 ...
- Flask视图函数报fmalformed url rule错误的原因
Flask视图函数报fmalformed url rule错误,原因可能是包含中文字符了 把标点符号都重新写一遍英文格式的,可能就不会报这个了
- Django框架----render函数和redirect函数的区别
render函数和redirect函数的区别: render:只会返回页面内容,但是未发送第二次请求 redirect:发挥了第二次请求,url更新 具体实例说明 render: redirect:
- CakePHP redirect函数
public function getContract($value=''){ App::uses ( 'UserContractController', 'Controller' ); $Contr ...
- render函数和redirect函数的区别+反向解析
render函数和redirect函数的区别+反向解析 1.视图函数:一定是要包含两个对象的(render源码里面有HttpResponse对象) request对象:----->所有的请求 ...
- Python json函数与Flask jsonify函数
JSON数据结构 要把json与字典区分开来 dumps(字典转换成Json) loads(Json转换成字典) 参考: Python 的字典是一种数据结构,JSON 是一种数据格式. json 就是 ...
- Flask聚合函数(基本聚合函数、分组聚合函数、去重聚合函数))
Flask聚合函数 1.基本聚合函数(sun/count/max/min/avg) 使用聚合函数先导入:from sqlalchemy import func 使用方法: sun():func.sum ...
- flask中错误使用flask.redirect('/path')导致的框架奇怪错误
我在首页的位置使用了如下代码: import flask @page_index.route('/') def index(): flask.redirect('/pythoncgi/') 结果站点出 ...
- flask 视图函数的使用
flask框架 视图函数当中 各种实用情况简单配置 1 建立连接 2 路由参数 3 返回网络状态码 4 自定义错误页面 5 重定向 6 正则url限制 和 url 优化 7 设置和获取cookie # ...
随机推荐
- 【BZOJ2733】永无乡(线段树,并查集)
[BZOJ2733]永无乡(线段树,并查集) 题面 BZOJ 题解 线段树合并 线段树合并是一个很有趣的姿势 前置技能:动态开点线段树 具体实现:每次合并两棵线段树的时候,假设叫做\(t1,t2\), ...
- 【BZOJ1499】【NOI2005】瑰丽华尔兹(动态规划)
[BZOJ1499]瑰丽华尔兹(动态规划) 题面 BZOJ 题解 先写部分分 设\(f[t][i][j]\)表示当前在\(t\)时刻,位置在\(i,j\)时走的最多的步数 这样子每一步要么停要么走 时 ...
- Activity的setResult方法
Activity的setResult方法http://blog.csdn.net/dinglin_87/article/details/8970144 调用setResult()方法必须在finish ...
- Python实现类似JavaScript 的Json对象
Python实现类似JavaScript 的Json对象 用过js的都知道 js中json也是一个对象,所以可以直接通过class.attr 取值,当attr不存在时也不会报错,那么Python可不可 ...
- MVC3控制器方法获取Form数据方法
http://www.cnblogs.com/bianlan/archive/2013/01/12/2857310.html 控制器方法获取View页面传送的数据有多种方法,以Edit方法为例: 1. ...
- linux环境下安装PHP扩展swoole
swoole linux环境下的安装 最近在折腾一个伪直播页面,需求中有用到评论 开始在想直接ajax直接实现,不过想了想觉得对数据库读写太过频繁 而且对服务器压力也挺大的 百度一番发现了这么个东西 ...
- git更换 拉取推送地址
更换:git remote set-url originhttp://git.caomall.cn/sucry/mouse.git」
- js正则表达式----replace
1.分组 '442665319@qq.com'.replace(/(\d+)(@)(\w+)(\.com)/,'[$1]$2[$3]$4') //"[442665319]@[qq].com& ...
- 视音频数据处理入门:FLV封装格式解析
===================================================== 视音频数据处理入门系列文章: 视音频数据处理入门:RGB.YUV像素数据处理 视音频数据处理 ...
- vue ESLint自动修复
在package.json文件中的"lint"里面加入--fix 然后终端里输入:npm run lint 1. vue用命令直接修复ESLint