我构建了一个小的 PHP 脚本,它通过定义相应的标题来创建 Excel 电子表格并强制下载。当我直接通过它的 URL(或者甚至通过 JS 调用这个脚本window.location.replace
)时,一切正常。现在,当我通过 Ajax 调用(同步和异步)调用同一个脚本时,没有任何反应。
有人可以解释这种行为吗?
问候塞巴斯蒂安
AJAX 请求在后台处理,因此下载标头将被忽略并仅传递给您的回调。
如果你想强制下载文件而不将他重定向到页面,你可以
将 url https://stackoverflow.com/下载为“stackoverflow.html”的示例:<a href="https://stackoverflow.com/" download="stackoverflow.html">Click me!</a>
将文本“test”下载为“file.txt”的示例:(<a href="data:text/plain;base64,dGVzdA==" download="file.txt">Click me</a>
其中dGVzdA==
“test”是 base64 编码的)
注入两个 a 标签后,您可以使用例如 jQuery 来模拟用户点击它们。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句