zoukankan      html  css  js  c++  java
  • Flask实战第5天:页面跳转和重定向

    GETPOST请求

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

    GET

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

    POST

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

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

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

    永久重定向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来实现永久重定向

    #coding=utf-8
    
    from flask import Flask,url_for,request,redirect
    from werkzeug.routing import BaseConverter
    
    app=Flask(__name__)
    
    
    @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
    if __name__=='__main__':

    2019-01-1711:58:20

  • 相关阅读:
    RabbitMQ学习笔记【1】
    【转】ES6学习笔记
    vue学习笔记【2】--模板语法
    vue学习笔记【1】
    npm使用
    Golang密码复杂度校验
    GORM的增删改查
    GORM:创建数据
    golang的time包:时间字符串和时间戳的相互转换
    输出10以内的所有正整数(while+if用法)
  • 原文地址:https://www.cnblogs.com/xinbaby2358/p/10281240.html
Copyright © 2011-2022 走看看