python - 使用flask可以播放数据库中保存的视频吗?

标签 python flask

我在数据库中保存了一个文件,并想在浏览器中播放它。视频文件的数据保存在 LargeBinary 列中。这是我在检索视频后尝试播放视频的部分:

@app.route('/play/')
def friends():
    file_data = Videos.query.filter_by(id=1).first()
    a = send_file(file_data.data, attachment_filename='video.mkv')

    return render_template('seprate_ep.html', video=a)

在 HTML 文件中,我只是引用了您通常会喜欢的视频:

<video src="{{ video }}"></video>

我怎样才能让它发挥作用?

最佳答案

我遇到了类似的问题并设计了以下解决方案。经过广泛的研究,我无法确定将二进制数据直接传输到 HTML 的直接方法。因此,我选择了一种直接的方法,将视频存储在本地,然后将文件路径传递给模板。

在 Python 中,使用 Flask Web 框架,您可以按如下方式实现此解决方案:

from flask import Flask, render_template

app = Flask(__name__)

@app.route('/')
def index():
    # Assume Videos schema has file path in them
    file_data = Videos.query.filter_by(id=1).first()
    video_path = file_data.path
    
    return render_template('index.html', video_path=video_path)

if __name__ == '__main__':
    app.run()

关于python - 使用flask可以播放数据库中保存的视频吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48129537/

相关文章:

python - App Engine - 难以访问 Twitter 数据 - Flask

python - flask-assets - sass 不解析@import scss 指令中的相对路径

python导入一个非标准库

Python从内部函数更改外部字典

python - 如何使用 FlaskClient 测试分段上传(用于单元测试)

python - WSGI 应用程序引发异常

python - 应用程序上下文可用时的 Flask 回调

python - Cython编译为exe,Windows

python - 将 Matlab 矩阵串联转换为 Python

python - 在 matplotlib 中将错误栏添加到 3D 图