Laravel 7-下载fiile无法开始

问题描述

希望用户能够按照Laravel site.的指示从Laravel环境中下载文件。

问题:下载文件的弹出窗口未显示。

故障排除:

  1. 权限已相应设置。

    sudo chown -R www-data:www-data storage
    
    sudo chmod -R 775 storage
    
  2. 已在Firefox和Chrome上进行了测试。

  3. 启动了Laravel应用,以强制使用新端口。

    php artisan serve &
    
  4. 该文件存在,我没有收到任何错误。 在按下触发器后,回显文本可见,但是, 确保流程(路由->表单->控制器)正常工作。

  5. 我已建立链接存储连接described here

php artisan storage:link

活动:

我下载成功了。我在特征中有一个run方法,该方法触发了其余的特征方法。如果将路由直接设置为下载方法,则它似乎可以工作。不确定为什么会导致从路由调用run方法的问题。


[我的控制器]

  public function downloadFile()
  {

  echo "string";

     
    $filename = 'file.png';
    
    // Test-1    

    return response()->download(
      storage_path(
        '/app/public/'. $filename
      )
    );

    // Test-2

    // return response()->download(
    //  public_path(
    //    'storage/' . $filename
    //  )
    // );

  }

解决方法

如果正在使用,请尝试不使用ajax调用downloadFile()

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...