gpt4 book ai didi

django - 在 Django 中发送视频作为响应

转载 作者:行者123 更新时间:2023-11-28 21:41:27 25 4
gpt4 key购买 nike

如何在 Django 中发送视频 mp4 文件作为响应?我不想嵌入 html 的视频或对象标签,但想发送 mp4 本身。任何人都可以帮助解决这个问题吗?

最佳答案

通常你不想这样做;最好重定向到非 Django 服务器到 serve static files ,例如django.shortcuts.redirect -- 它会更快、内存效率更高,而且可能更安全。但当然有时这并不方便。这应该有效:

from wsgiref.util import FileWrapper

file = FileWrapper(open('path/to/video.mp4', 'rb'))
response = HttpResponse(file, content_type='video/mp4')
response['Content-Disposition'] = 'attachment; filename=my_video.mp4'
return response

使用 FileWrapper ( docs ) 可以避免一次发送太多数据,因为 Python 文件对象一次迭代一行,\n 字符大概在 mp4 中不是特别常见。 (发送太多意味着网络服务器无法发送文件,因为它是从硬盘驱动器读取的,而是必须等待长时间的笨拙间隔增量。)

请注意,虽然我没有在任何地方的文档中看到这一点,但文件 does get closed when it's done with .

关于django - 在 Django 中发送视频作为响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10493181/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com