#转载请留言联系

flask 框架基本使用(1):https://www.cnblogs.com/chichung/p/9756935.html

1. flask 自定义返回状态码与响应头

from flask import Flask,make_response

app=Flask(__name__)

@app.route("/")
def index():
#666是指定的状态码,name:chichung是添加到响应头的键对
return "<h1>我是大标题</h1>",666,{"name":"chichung"} if __name__ == '__main__':
app.run()

2. flask 返回json

json 是 js 里面默认的一种对象格式,是当今网络普遍使用的一种数据传输格式,应用在不同的平台或不同的编程语言直接进行数据的传输。

在开发中,经常遇到后端返回 json 给前端的情况。那么,用 flask 应该怎么返回 json 呢?

from flask import Flask,jsonify

app = Flask(__name__)

@app.route("/index_data")
def index_data():
respond_data = { #判断json格式是否正确可以用搜索一下json格式化
"name": "chichung",
"height": 177,
"weight": 110.5
}
return jsonify(respond_data) if __name__ == '__main__':
app.run()

jsonify 方法可以把 respond_data 字典转化为 json 的字符串(原理与 json.dump())相同,然后在进行返回给前端。

拓展:

在返回不同的数据时(例如图片,js,css......),通常要指定响应头,写上返回的数据的类型。

# js
text/javascript
application/javascript

# css
text/css

# html
text/html

# json
application/json
text/json

# png,gif,jpg/jpeg
image/png
image/gif
image/jpeg
image/jpg

3. flask 实现网页的重定向响应

重定向响应是什么呢?举个栗子说明。京东以前的域名是www.360buy.com,而现在改为了www.jd.com。但是你访问360buy.com的时候,会自动跳转到jd.com。假设你是京东的web开发,你要实现这个功能,你会怎么做呢?

from flask import Flask,redirect

app=Flask(__name__)

@app.route("/")
def index():
return redirect("http://www.jd.com") if __name__ == '__main__':
app.run()

还有一种情况,你打开淘宝,点进“我的淘宝”,跳出了让你登录的窗口。这是怎么实现的呢?

from flask import Flask,redirect,url_for

app=Flask(__name__)

@app.route("/center")
def center():
#如果还没登录自动跳转到登录界面
url = url_for("login") #url_for的作用是根据视图函数的名称来自动生成对应的url地址
return redirect(url) @app.route("/login")
def login():
return "请登录" if __name__ == '__main__':
app.run()

进行页面跳转的编写时,一般不要固定跳转的 url 地址,而是采用 url_for 函数来生成对应的 url 地址。因为有些公司会定期更改一下 url ,但是视图函数的名字一直都是固定的。

拓展:

3xx统一都是表示页面重定向。

301 永久重定向

302 临时重定向

flask框架基本使用(2)(响应与重定向)的更多相关文章

  1. Flask 框架 重定向,捕获异常,钩子方法及使用jsonify在网页返回json数据

    Flask 框架中常用到重定向方法来实现路由的跳转 ,路由跳转又分为站内跳转和站外跳转 常用的站内跳转方法为url_for  而常用的站外跳转为redirect 在这里提示一下: 在使用两种方法是须调 ...

  2. Flask框架(二)—— 反向解析、配置信息、路由系统、模板、请求响应、闪现、session

    Flask框架(二)—— 反向解析.配置信息.路由系统.模板.请求响应.闪现.session 目录 反向解析.配置信息.路由系统.模板.请求响应.闪现.session 一.反向解析 1.什么是反向解析 ...

  3. Flask框架 请求与响应 & 模板语法

    目录 Flask框架 请求与响应 & 模板语法 简单了解Flask框架 Flask 框架 与 Django 框架对比 简单使用Flask提供服务 Flask 中的 Response(响应) F ...

  4. [Python自学] Flask框架 (1) (Flask介绍、配置、Session、路由、请求和响应、Jinjia2模板语言、视图装饰器)

    oldboy:s9day114 参考博客:https://www.cnblogs.com/wupeiqi/articles/7552008.html 一.Flask简介 1.安装Flask pip i ...

  5. flask请求钩子、HTTP响应、响应报文、重定向、手动返回错误码、修改MIME类型、jsonify()方法

    请求钩子: 当我们需要对请求进行预处理和后处理时,就可以用Flask提供的回调函数(钩子),他们可用来注册在请求处理的不同阶段执行的处理函数.这些请求钩子使用装饰器实现,通过程序实例app调用,以 b ...

  6. Python自动化运维之30、Flask框架

    Flask 官网:http://flask.pocoo.org/ flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是 ...

  7. Flask框架搭建一个日程表

    目录 前言 项目介绍 技术栈 Flask Web开发流程 一.搭建环境 1.1: 创建虚拟环境 1.2: 安装依赖包 1.3: 创建依赖包列表文件 1.4: 测试hello word 二.应用程序开发 ...

  8. Flask框架从入门到实战

    Flask简介: Flask是一个使用 Python 编写的轻量级 Web 应用框架,基于 WerkzeugWSGI工具箱和 Jinja2模板引擎.使用 BSD 授权. Flask也被称为 " ...

  9. python之Flask框架

    一.简单的Flask框架 1)flask简介 Flask 是一个 web 框架.也就是说 Flask 为你提供工具,库和技术来允许你构建一个 web 应用程序. 这个 wdb 应用程序可以使一些 we ...

随机推荐

  1. 2-安装linux7

    1.操作系统简介 操作系统: 桌面操作系统 redhat fedora slackware ubuntu debian suse linux centos 服务器操作系统 linux redhat s ...

  2. C#冒泡算法复习

    C#冒泡算法复习 冒泡算法的意思:每一趟找到一个最小或最大的数放到最后面,比较总数的n-1次(因为比较是2个双双比较的) 第一层循环表示进行比较的次数,总共要比较(数的)-1次 (因为比较是2个双双比 ...

  3. global js库

    var GLOBAL = {}; GLOBAL.namespace = function(str) { var arr = str.split("."), o = GLOBAL,i ...

  4. Node应用进程管理器pm2的使用

    本文转载自:豆瓣-PM2介绍 更多内容见github上的pm2说明文档pm2 pm2 是一个带有负载均衡功能的Node应用的进程管理器. 当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程 ...

  5. Vue_初识

    前端三大框架: vue:开发效率相当高了. angalar:适合做后台管理系统,入手容易,但是越往后会越难受. react:虚拟dom(渲染内存中存储的dom,经过操作后,才会去渲染浏览器的真实dom ...

  6. NOIP2018 集训(二)

    A题 神炎皇 问题描述 神炎皇乌利亚很喜欢数对,他想找到神奇的数对. 对于一个整数对 \((a,b)\) ,若满足 \(a+b\leq n\) 且 \(a+b\) 是 \(ab\) 的因子,则称 为神 ...

  7. 孤荷凌寒自学python第三十九天python 的线程锁Lock

    孤荷凌寒自学python第三十九天python的线程锁Lock (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 当多个线程同时操作一个文件等需要同时操作某一对象的情况发生时,很有可能发生冲突, ...

  8. (原)Unreal 渲染模块引言Temp

            @author:白袍小道     引言 本文只在对Unreal渲染模块做一些详细的理解,务求能分析出个大概. 其中框架的思想和实现的过程,是非常值得学习和推敲一二的. 涉及资源系统,材 ...

  9. CSU-2110 Keeping Cool

    题目链接 http://acm.csu.edu.cn:20080/csuoj/problemset/problem?pid=2110 题目 Description Kevin has just got ...

  10. REMIX与LOCALHOST相连

    REMIX与LOCALHOST相连 让Remix与本地文件系统进行交互,点击connect同时找到localhost下的Remix文件管理器的共享目录.在开始之前,参考网址: https://remi ...