如何使用 JavaScript 将 POST 请求获取的视频流转换为视频文件并下载?
将 post 请求获取的视频流转换为视频文件并下载
问题:
怎样使用 javascript 将通过 post 请求获取的视频文件流转换为视频文件并下载?
回答:
第一种方法:使用 blobs 和 url.createobjecturl
responsedata: 'blob', success: (response) => { let bloburl = url.createobjecturl(response); let a = document.createelement('a'); a.download = 'video.mp4'; a.href = bloburl; a.click(); url.revokeobjecturl(bloburl); }
第二种方法:使用表单下载
<form target="_blank" action="下载地址" method="post"> <input type="hidden" name="file_key" value="文件 key"> </form>
document.querySelector('form').submit();
- 优点:支持移动端,支持后台下载。
- 缺点:不能携带 headers,可能需要通过临时授权 url 来解决。
结合两种方法:安全的移动端后台下载
通过结合两种方法,可以实现一种安全的、支持移动端的、支持后台下载的下载功能:
- 使用表单下载设置临时授权 url。
- 使用 post 请求带有临时授权 url 的表单。
- 在响应回调中使用 blobs 和 url.createobjecturl 转换并下载。
以上就是如何使用 JavaScript 将 POST 请求获取的视频流转换为视频文件并下载?的详细内容,更多请关注硕下网其它相关文章!