flask路由和视图和cookie

什么是路由

"""
客户端(例如web浏览器)把请求发送给Web服务器,Web服务器再把请求发送给Flask程序实例。
程序实例需要知道对每个URL请求运行那些代码,所以保存了一个URL到Python函数的映射关系。
处理URL和函数之间关系的程序称之为路由。
"""

看个简单完整的的例子

#!/usr/bin/env python
# -*- coding:utf-8 -*-

from flask import Flask

app = Flask(__name__)

@app.route(‘/‘)
def index():
    return ‘<h1>hello world! </h1>‘

if __name__ == ‘__main__‘:
    app.run(debug=True)

获取url的page或者name

#!/usr/bin/env python
# -*- coding:utf-8 -*-

from flask import Flask

app = Flask(__name__)

@app.route(‘/user/<name>‘)
def user(name):
    return ‘<h1>Hello, %s!</h1>‘ % name

if __name__ == ‘__main__‘:
    app.run(debug=True)

Flask的上下文全局变量

#!/usr/bin/env python
# -*- coding:utf-8 -*-

from flask import Flask
from flask import request

app = Flask(__name__)

@app.route(‘/user_agent‘)
def agent():
    user_agent = request.headers.get(‘User-Agent‘)
    return user_agent

if __name__ == ‘__main__‘:
    app.run(debug=True)

Flask的钩子函数

缺少一个例子,改天加上

Flask的响应以及cookie

Flask 调用视图函数后,会将其返回值作为响应的内容。大多数情况下,响应就是一个简
单的字符串,作为 HTML 页面回送客户端。
但 HTTP 协议需要的不仅是作为请求响应的字符串。HTTP 响应中一个很重要的部分是状
态码,Flask 默认设为 200,这个代码表明请求已经被成功处理。
如果视图函数返回的响应需要使用不同的状态码,那么可以把数字代码作为第二个返回
值,添加到响应文本之后。例如,下述视图函数返回一个 400 状态码,表示请求无效:

Flask也有response, render, redirect

时间: 2024-12-29 09:44:28

flask路由和视图和cookie的相关文章

flask客户端测试使用设置cookie参数

今天在对flask客户端进行测试,然后看到我们服务器端用请求前钩子写了这样的代码 @app.before_requestdef before_request(): session = request.cookies.get('P', '') 这段代码的意思是,在将请求发向flask路由的之前先运行这段代码,我们都知道要在requests里面设置cookies的参数只需要 import requests print requests.request('get', 'http://nuanhi.co

laravel route路由,视图和response

Laravel充分利用PHP 5.3的特性,使路由变得简单并富于表达性.这使得从构建API到完整的web应用都变得尽可能容易.路由的实现代码在 application/routes.php 文件. 和其它框架不同,应用逻辑在Laravel中可以通过两种方式集成.虽然在控制器(controllers)中实现业务逻辑是普遍的做法,但是在Laravel中也可以直接在路由中嵌入应用逻辑.这种方式尤其适用于只有几个页面的小型网站,这样就免去了创建一大堆控制器(controllers),还要为每个控制器创建

Flask即插视图与tornado比较

由于公司使用了Tornado框架和Flask框架,之前一直使用的都是Flask框架,已经对url下面紧跟着视图的写法很固执.刚开始接触Tornado框架,对于其url和视图分开的写法思想上无法转变.今天看了Flask的源码和相关教程看到原来 Flask也可以写出和Tornado类似的代码结构--Flask即插视图. 代码如下: from functools import wraps from flask import Flask, request from flask.views import

【Flask路由系统】 -- 2019-08-11 19:11:52

目录 动态路由参数 路由参数 methods endpoint defaults strict_slashes redirect_to subdomain 原文: http://106.13.73.98/__/112/ @(Flask路由) *** 动态路由参数 三种用法 <int:xx> 要求输入的url必须是可转换为int类型的 <string:xx> 要求输入的url必须是可转换为String类型 <xx> 默认使用的是可转换为String类型的 开始测试 代码如

【Flask路由系统】 &#538110;

目录 动态路由参数 路由参数 methods endpoint defaults strict_slashes redirect_to subdomain 原文: http://blog.gqylpy.com/gqy/337 "@(Flask路由) *** 动态路由参数 三种用法 <int:xx> 要求输入的url必须是可转换为int类型的 <string:xx> 要求输入的url必须是可转换为String类型 <xx> 默认使用的是可转换为String类型的

2Python全栈之路系列之Django路由与视图

Python全栈之路系列之Django路由与视图 路由说白了就是与视图(函数)的对应关系,怎么说呢,一个路由对应一个视图,比如上面文章中所提到的那样,当打开/users/路径的时候会让users这个函数来进行逻辑处理,把处理的结果再返回到前端. 那么django是怎么知道从哪里找路由的配置文件入口呢?其实这在settings.py文件中已经被定义了: ROOT_URLCONF = 'ansheng.urls' 路由的配置 绝对地址访问 # 访问地址必须是http://127.0.0.1:8000

Vue路由-命名视图实现经典布局

Vue路由-命名视图实现经典布局 相关Html: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="

深入学习Flask框架之视图及路由

在前面一讲中我们学习如何创建一个简单的Flask项目,并做了一些简单的分析.接下来在这一节中就主要来讲讲Flask中最核心的内容之一:Werkzeug工具箱.Werkzeug是一个遵循WSGI协议的Python函数库.WSGI协议在前面的文章中也有提到(点我查看).那Werkzeug有什么作用呢?它其实实现了很多底层的东西,如Request.Response和集成URL请求路由等. 一.Werkzeug的组成: 二.routing模块 routing模块的主要目的是负责实现URL解析.不同的UR

Flask路由+视图补充

一.路由设置的两种方法 1.装饰器 @app.route('/index/') def index(): return 'Hello World!' 2.源码 route->decorator->add_url_rule(rule, endpoint, f, **options) def index(): return 'Hello World!' app.add_url_rule('/index/', None, index) 注意:endpoint的值不能一致 二.参数 rule URL规