由 Ajax 调用调用时,PHP 触发下载不起作用

塞巴斯蒂安·迪恩

我构建了一个小的 PHP 脚本,它通过定义相应的标题来创建 Excel 电子表格并强制下载。当我直接通过它的 URL(或者甚至通过 JS 调用这个脚本window.location.replace)时,一切正常。现在,当我通过 Ajax 调用(同步和异步)调用同一个脚本时,没有任何反应。

有人可以解释这种行为吗?

问候塞巴斯蒂安

离子系统

AJAX 请求在后台处理,因此下载标头将被忽略并仅传递给您的回调。

如果你想强制下载文件而不将他重定向到页面,你可以

  • 将 iframe 注入页面并将下载 url 作为 src 参数传递
  • 使用 a 标签链接到下载 url 并将 HTML5 下载属性添加到它
  • 将 ajax 请求 base64 编码的结果作为 src 参数放入注入的 a-tag 中,并传递下载参数。

将 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] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如果由php ajax函数返回,href =“#”不起作用

来自分类Dev

AJAX调用PHP文件不起作用

来自分类Dev

由PHP调用时SkyScanner API错误

来自分类Dev

由PHP调用时SkyScanner API错误

来自分类Dev

AJAX 调用不起作用 - PHP、MySQL、jQuery/Ajax

来自分类Dev

ajax调用后php echo javascript函数不起作用?

来自分类Dev

从AJAX调用的PHP订购数组不起作用

来自分类Dev

使用Ajax调用PHP脚本不起作用

来自分类Dev

通过ajax调用特定的php函数不起作用

来自分类Dev

从ajax调用中检索php变量,但不起作用

来自分类Dev

对 PHP 函数的 JavaScript Ajax 调用不起作用

来自分类Dev

在加载的 DIV 中传入 jquery AJAX/jquery 调用时,Javascript 将不起作用

来自分类Dev

在ajax调用后尝试调整表大小时,可触发触发器不起作用

来自分类Dev

参数不起作用的AJAX调用

来自分类Dev

异步AJAX调用何时不起作用

来自分类Dev

参数不起作用的AJAX调用

来自分类Dev

Javascript Ajax调用不起作用?

来自分类Dev

事件触发后,ajax调用后创建的按钮不起作用

来自分类Dev

如何根据变量的值进行由 onbeforeload 触发的条件 ajax 调用

来自分类Dev

$ ajax url的Ajax和jQuery调用不起作用

来自分类Dev

ajax成功内的ajax调用不起作用

来自分类Dev

为什么Jquery $ .ajax即使成功调用也会在函数调用时触发所有statusCode

来自分类Dev

jQuery ajax 调用在 200 成功调用时触发错误事件

来自分类Dev

使用Ajax调用php文件时,php文件中的JavaScript不起作用

来自分类Dev

从NSObject调用时,DBRestClient不起作用

来自分类Dev

从BroadcastReceiver调用时,startActivity不起作用

来自分类Dev

从NSObject调用时,DBRestClient不起作用

来自分类Dev

从systemd调用时ssh不起作用

来自分类Dev

由用户调用时关闭线程

Related 相关文章

  1. 1

    如果由php ajax函数返回,href =“#”不起作用

  2. 2

    AJAX调用PHP文件不起作用

  3. 3

    由PHP调用时SkyScanner API错误

  4. 4

    由PHP调用时SkyScanner API错误

  5. 5

    AJAX 调用不起作用 - PHP、MySQL、jQuery/Ajax

  6. 6

    ajax调用后php echo javascript函数不起作用?

  7. 7

    从AJAX调用的PHP订购数组不起作用

  8. 8

    使用Ajax调用PHP脚本不起作用

  9. 9

    通过ajax调用特定的php函数不起作用

  10. 10

    从ajax调用中检索php变量,但不起作用

  11. 11

    对 PHP 函数的 JavaScript Ajax 调用不起作用

  12. 12

    在加载的 DIV 中传入 jquery AJAX/jquery 调用时,Javascript 将不起作用

  13. 13

    在ajax调用后尝试调整表大小时,可触发触发器不起作用

  14. 14

    参数不起作用的AJAX调用

  15. 15

    异步AJAX调用何时不起作用

  16. 16

    参数不起作用的AJAX调用

  17. 17

    Javascript Ajax调用不起作用?

  18. 18

    事件触发后,ajax调用后创建的按钮不起作用

  19. 19

    如何根据变量的值进行由 onbeforeload 触发的条件 ajax 调用

  20. 20

    $ ajax url的Ajax和jQuery调用不起作用

  21. 21

    ajax成功内的ajax调用不起作用

  22. 22

    为什么Jquery $ .ajax即使成功调用也会在函数调用时触发所有statusCode

  23. 23

    jQuery ajax 调用在 200 成功调用时触发错误事件

  24. 24

    使用Ajax调用php文件时,php文件中的JavaScript不起作用

  25. 25

    从NSObject调用时,DBRestClient不起作用

  26. 26

    从BroadcastReceiver调用时,startActivity不起作用

  27. 27

    从NSObject调用时,DBRestClient不起作用

  28. 28

    从systemd调用时ssh不起作用

  29. 29

    由用户调用时关闭线程

热门标签

归档