laravel返回pdf下载,但仍希望重定向


laravel return pdf download but still want to redirect

我想问一下,如果已经发送了返回,是否有人知道重定向用户的方法。

在我的情况下,我努力做到以下几点。浏览器会生成pdf文件并将其作为下载文件发送。但在发送后,我仍然想重定向,因为数据库记录会在这个过程中更新。

我在控制器中的代码如下:

session::flash('informationmessage', 'The labour entries were billed');
        return $pdf->download();
        redirect('admin/customers');

任何帮助都将不胜感激,

欢呼

不,你不能。由于重定向是由客户端完成的,所以它是由服务器端生成的一个小js代码。请求完成后,连接将关闭。服务器端无法再向浏览器发送信息。您可以尝试打开一个新的选项卡进行下载,然后重定向主选项卡。

简而言之,这是不可能的。正如您所说,在重定向之前,您已经返回了一个响应。

使用jquery filedownloader下载文件,因为它处理ajax请求,所以下载后可以进行任何进一步的处理,无论是新的响应还是新的请求。。。有关http://johnculviner.com/jquery-file-download-plugin-for-ajax-like-feature-rich-file-downloads/ 的更多信息