Flask-Response
Flask中的HTTPResponse
from flask import Flask,redirect
app = Flask(__name__) @app.route("/index")
def index():
return "hello word" # HttpResponse【返回字符串】 if __name__ == '__main__':
app.run("0.0.0.0",9876)
在Flask 中的HttpResponse 在我们看来其实就是直接返回字符串和django中的HttpResponse("hello word")一样
Flask中的render
使用模板渲染页面时我们需要导入render_template;并且需要在项目的目录下创建一个templates文件夹用来存放html页面;

否则可能会有一个Jinja2的异常

遇到上述的问题,基本上就是你的template的路径问题
设置该文件夹为模板文件夹

from flask import Flask,render_template
app = Flask(__name__) @app.route('/')
def home():
# 模板渲染
return render_template("home.html") if __name__ == '__main__':
app.run("0.0.0.0",9876)
flask的模板渲染和django的模板渲染差不多,只不过django用的render而flask用render_template
Flask中的redirect
from flask import Flask,redirect # 导入redirect
app = Flask(__name__) @app.route('/')
def home():
# 访问/重定向到index页面
return redirect("/index") @app.route("/index")
def index():
return "hello word" # HttpResponse if __name__ == '__main__':
app.run("0.0.0.0",9876)
每当访问/就会重定向到index页面

Flask返回特殊的格式
返回JSON格式的数据
jsonify
from flask import Flask,jsonify
app = Flask(__name__) @app.route('/')
def home():
return jsonify({"name":"henry","age":18})
# 在Flask 1.1.1 版本中 可以直接返回字典类型 可以不再使用jsonify了
# return {"name":"henry","age":18} if __name__ == '__main__':
app.run("0.0.0.0",9876)

响应头中加入 Content-type:application/json

发送文件
send_file
打开并返回文件内容,
自动识别文件类型,
响应头中加入Content-type:文件类型
ps:当浏览器无法识别Content-type时,会下载文件
我们以图片为列:
from flask import Flask,send_file
app = Flask(__name__) @app.route('/')
def home():
# 访问/路径给返回一个图片
return send_file("templates/jypyter.png") if __name__ == '__main__':
app.run("0.0.0.0",9876)

查看响应头中的Content-type类型

其他content-type
MP3 【Content-Type: audio/mpeg】
MP4 【Content-Type: video/mp4】
Flask-Response的更多相关文章
- flask response 详解
from flask import Flask,Response,jsonify #Flask = werkzeug(处理网络的) + sqlalchemy(处理数据库的) + jinja2 (处理模 ...
- Flask Response响应(flask中设置响应信息的方法,返回json数据的方法)
设置响应信息的方法 1. 返回自定义的响应头,有两种方式: (1) 第一种是:视图函数return的时候,使用元组,返回自定义的信息 返回的时候的状态码可以自定义信息:"状态码 自定 ...
- flask第十六篇——Response【2】
今天来介绍自定义返回对象: 现在我们假定有一个需求:所有的视图函数都要返回json格式的对象我们先看一下Response的源码: 发现只有一行default_mimetype='text/html', ...
- flask第十五篇——Response
从这一节开始,我就要开始讲关于模板的知识了.先来学习一下Response的相关知识. 所有返回前台的内容其实都应该是Response的对象或者其子类,我们看到如果返回的是字符串直接可以写成return ...
- Flask初学者:视图函数/方法返回值(HTML模板/Response对象)
返回HTML模板:使用“from flask import render_template”,在函数中传入相对于文件夹“templates”HTML模板路径名称字符串即可(默认模板路径),flask会 ...
- Inside Flask - flask.__init__.py 和核心组件
Inside Flask - flask.__init__.py 和核心组件 简单的示例 首先看看一个简单的示例.使用 Flask ,通常是从 flask 模块导入 Flask . request 等 ...
- Python中使用Flask、MongoDB搭建简易图片服务器
主要介绍了Python中使用Flask.MongoDB搭建简易图片服务器,本文是一个详细完整的教程,需要的朋友可以参考下 1.前期准备 通过 pip 或 easy_install 安装了 pymong ...
- Flask 文件和流
当我们要往客户端发送大量的数据比较好的方式是使用流,通过流的方式来将响应内容发送给客户端,实现文件的上传功能,以及如何获取上传后的文件. 响应流的生成 Flask响应流的实现原理就是通过Python的 ...
- [Python]Flask构建网站分析应用
原文Saturday morning hacks: Building an Analytics App with Flask - 由orangleliu友情翻译 ,主要是通过埋点技术来实现web网页的 ...
- 9.Flask Cookie和Session
1.1.概念 cookie:在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户.cookie的出现就是为了解决这个问题,第 ...
随机推荐
- git忽略而不提交文件的3种情形
1.从未提交过的文件可以用.gitignore 也就是添加之后从来没有提交(commit)过的文件,可以使用.gitignore忽略该文件 该文件只能作用于未跟踪的文件(Untracked Files ...
- TCP协议探究(四):定时器
1 概述 重传定时器:使用于当希望收到另一端的确认. 坚持(persist)定时器:使窗口大小信息保持不断流动,即使另一端关闭了其接收窗口 保活(keepalive)定时器:用于检测一个空闲连接的另一 ...
- C#UDP异步通信
using SetingDemo.LogHelp;using SetingDemo.SingleRowDeclare;using System;using System.Collections.Gen ...
- 关于SpringBoot的自动配置和启动过程
一.简介 Spring Boot简化了Spring应用的开发,采用约定大于配置的思想,去繁从简,很方便就能构建一个独立的.产品级别的应用. 1.传统J2EE开发的缺点 开发笨重.配置繁多复杂.开发效率 ...
- vue学习(8)-过渡transition&动画animate
进入之前 离开之后 v-enter---v-enter-to v-lea ...
- eclipse svn 插件离线安装后connector获取不到的问题解决
最近换了一家公司,写代码的电脑不给外网,所以各种麻烦的问题就来了,这里就说一下eclipse 安装SVN插件的一个小问题,虽说是小问题,但也折腾了我好几个小时,当然也可以不用这个插件,直接安装SVN客 ...
- C++手动调用析构函数无效问题排查
在学习C++的时候,都知道不要手动调用析构函数,也不要在构造函数.析构函数里调用虚函数.工作这么多年,这些冷门的知识极少用到,渐渐被繁杂的业务逻辑淹没掉. 不过,最近项目里出现了析构函数没有被正确地调 ...
- 实时跟踪之TRACA
背景: 目前,在实时跟踪领域存在着越来越多的先进方法,同时也极大地促进了该领域的发展.主要有两种不同的基于深度学习的跟踪方法:1.由在线跟踪器组成,这些跟踪器依赖网络连续的微调来学习目标的变化外观,精 ...
- 简单易用的PIL,教你如何使用python实现自动化截屏
Python有个第三方模块叫做PIL是Python Imaging Library的缩写,是用来进行图像处理的,比如,改变图片颜色,图片缩放,图片裁剪等等基本图片操作.它还包含一个截屏的功能. 从以上 ...
- C++-cin与scanf cout与printf效率问题
http://blog.csdn.net/l2580258/article/details/51319387 void cin_read_nosync() { freopen("data.t ...