gpt4 book ai didi

javascript - 在文件下载完成之前、同时或之后发送 JavaScript 警报

转载 作者:行者123 更新时间:2023-12-03 12:28:42 25 4
gpt4 key购买 nike

如果 .zip 下载(里面有一些照片)达到确定的大小,比如说 10MB,我想打印一个 javascript 警报或任何方式向用户发出警报,通知他下载已被限制,因为已达到 60MB 的限制。

我在这里使用 MVC,我的 Controller 知道 .zip 文件大小,但如何在达到该限制后发送该警报并仍然提供文件供用户下载?

我通过设置标题 Content-Type、Content-Length、Content-Disposition 和文件名来输出文件:

// alert could be here
// 60000*1024 means 60MB
// if (filesize($file_zip) >= 60000*1024) alert('alert msg');

header('Content-Type: application/zip');
header('Content-Length: '.filesize($file_zip));
header('Content-Disposition: attachment; filename=testPhotos.zip');
readfile($file_zip);
unlink($file_zip);

我需要这样做,因为由于某种原因,请求在 .zip 文件达到 63,7MB 并且浏览器显示空白屏幕后停止。不,请求不会超时,因为它设置为一个很高的值。我不知道这是否是 php 或 nginx 配置限制。

最佳答案

将其分解为两个 ajax 调用,将它们一一链接起来。首先,请求服务器压缩文件,返回成功代码以及可能的错误消息(文件大小太大等),以及刚刚创建的 zip 文件的某种标识符。如果 zip 不是太大,则直接使用刚刚获得的标识符进行请求。否则,显示错误消息。

关于javascript - 在文件下载完成之前、同时或之后发送 JavaScript 警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24046609/

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