Flask send_file request

Posted caesar-id

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flask send_file request相关的知识,希望对你有一定的参考价值。

send_file:

send_file(
filename_or_fp,
mimetype=None, 
as_attachment=False,
attachment_filename=None, 
add_etags=True,
cache_timeout=None, 
conditional=False, 
last_modified=None)

filename_or_fp:要发送文件的文件名
mimetype:如果指定了文件的媒体类型(文件类型),指定了文件路径将自动进行检测,否则将引发异常。
as_attachment:如果想要以附件的形式将文件发给客户端应设为True。经测试如果为True会被下载到本地。
attachment_filename:需要配合as_attachment=True使用,将下载的附件更改成我们指定的名字。
add_etags=True:设置为“false”以禁用附加etags。 

 发送一个图片:

from flask import Flask,send_file

app = Flask(__name__)
app.config[DEBUG] = True
@app.route(/index)
def index():
    return send_file(1.jpg)    # 发给客户端一张图片

app.run()

如果没有问题,你会看到如下图片:

技术图片

 展示一个MP3

from flask import Flask,send_file

app = Flask(__name__)
app.config[DEBUG] = True
@app.route(/index)
def index():
    return send_file(2.mp3)   # 展示一个MP3

app.run()

 如果一切正常你会看到如下界面:

技术图片

 request:常用方法

request.args.get():用于获取get请求传来的参数
request.form.get():获取form传来的参数
request.method:判断请求方法
request.path:获取url路径
request.url:完整的url路径
request.host:主机地址
request.host_url:带URL的主机地址
request.base_url:获取基本的URL路径

 session

from flask import Flask,session

app = Flask(__name__)
app.config[DEBUG] = True
app.secret_key = [email protected]#$%^&*()   # session必须要有
@app.route(/index)
def index():
    session[session] = test  # 创建一个session
    return Hello World

app.run()

如果一切顺利你会看到如下页面:

技术图片

 

以上是关于Flask send_file request的主要内容,如果未能解决你的问题,请参考以下文章

flask send_file使用

Python Flask send_file StringIO 空白文件

来自 Flask send_file 的 Zip 文件无效

Flask基础1

尽管有 200 条消息,flask send_file 仍然失败 [重复]

Flask send_file 返回 200 OK 但不发送文件