GET和POST请求

在网络请求中有许多请求方式,比如GET, POST, DELETE, PUT等,最常用的就是GET和POST

GET

  只会在服务器上获取资源,不会更改服务器的状态,这种请求方式推荐使用GET
  GET请求把参数放到url中,通过’?xx=xxx‘的形式传递

POST

  给服务器提交一些数据或者文件,一般POST请求是会对服务器的状态产生影响
  POST请求把参数放到Form Data中

在flask的route中默认使用的是get方法,用method参数来指定某个url能够使用的方法

@app.route('/list/', methods=['get', 'post'])
def my_list():
return 'list'

永久重定向301

http的状态码是301,多用于旧网址被废弃了要转到一个新的网址确保用户的访问,比如京东的网站,你输入www.jingdong.com的时候,会被重定向到www.jd.com,因为jingdong.com这个网址已经被废弃了,被改成了jd.com,所以这种情况下应该使用永久重定向

临时重定向302

http的状态码是302,表示页面的临时性跳转。比如访问一个需要权限的网址,如果用户没有登录,应该重定向到登录页面,这种情况下,应该用临时重定向

在flask中,重定向是通过flask.redict(location, code=302)函数来实现的

location表示需要重定向到的URL,应该配合url_for()函数来使用

code表示采用哪种重定向,默认是302(临时重定向),也可以改成301来实现永久重定向

from flask import Flask, url_for, request, redirect
...
@app.route('/login/', methods=['GET', 'POST'])
def login():
return 'login page' @app.route('/profile/', methods=['GET', 'POST'])
def profile():
name = request.args.get('name')
if not name:
return redirect(url_for('login'))
else:
return name

最新文章

  1. js_继承
  2. CI框架之HOOKS使用流程及原理
  3. Ubuntu ./configure 半途终止 导致没有生成makefile文件 解决方法
  4. anjularjs简介
  5. CentOS6.0(64位)安装Apache+PHP+Mysql教程,安装Magento(解决DOM,Mcrypt,GD问题)完整教程
  6. iOS循环引用问题
  7. Win10 64位安装SQL2000(个人版)
  8. 打开URL操作
  9. Android WebView和JavaScript交互
  10. 给表格设置border还可以这样玩
  11. this关键字的解析
  12. Android应用程序资源管理器(Asset Manager)的创建过程分析
  13. Linux Set Command
  14. pdf.js在国际化的时候,显示不了中文的解决办法
  15. DNS 访问 Service - 每天5分钟玩转 Docker 容器技术(138)
  16. 如何在Cocos2D游戏中实现A*寻路算法(六)
  17. BZOJ-9-3295: [Cqoi2011]动态逆序对
  18. 【论文速读】Cong_Yao_CVPR2017_EAST_An_Efficient_and_Accurate_Scene_Text_Detector
  19. 为创世纪图书馆(Library Genesis)作镜像
  20. ubuntu 安装redis

热门文章

  1. visio中相关设置-菜单视图
  2. BZOJ3573 [Hnoi2014]米特运输 【贪心】
  3. 原生ajax方法封装
  4. shell之流程控制
  5. 【LuoguP1169 bzoj1057】[ZJOI2007]棋盘制作
  6. 「6月雅礼集训 2017 Day1」看无可看
  7. CDQ 学习笔记
  8. git分支开发,分支(feature)同步主干(master)代码,以及最终分支合并到主干的操作流程
  9. #error#错误原因:Cannot find executable for CFBundle 0x8ad60b0 (not loaded)
  10. bzoj 2245 费用流