【问题标题】:Retrieve file POST to Laravel 5检索文件 POST 到 Laravel 5
【发布时间】:2017-04-12 17:51:34
【问题描述】:

我正在尝试将文件发布到 Laravel 中的上传功能。为了简单起见,我使用 Postman 对其进行测试。根据文档,访问文件请求的方式是:

$request->file('image')

所以我的控制器函数以:

开头
  if ($request->file('image')->isValid()) {
     $file = $request->file('image');
  }

还有我的发帖请求:

如您所见,参数为 NULL。

那么在控制器中访问文件发布请求的正确方法是什么?

谢谢。

【问题讨论】:

    标签: forms laravel-5 upload postman


    【解决方案1】:
    $image = $request->hasFile('image'); 
    
    if(isset($image)){
      //perform operation
    }
    

    以上应该是你需要检查请求中是否有文件,然后对文件进行你想要的操作。

    【讨论】:

    • hmmm... $image 现在是“假”
    • 发生这种情况的唯一原因是可能没有上传文件。
    • VikingCode 在你说有问题之前一定要确保你的发现很好.. 你添加的 request->hasFile() 刚刚添加了 3 小时以回答超过 16 小时的问题,现在让我教育你,request->hasFile() 检查请求中是否存在 a 文件,如果没有文件它评估为 false,这反过来意味着没有文件,并且 isValid() 不能在 null 上调用。
    • 好的,但如果有一个......它会返回什么?文件还是真的? ...所以 $image 的价值是真实的...那么你在 if 里面检查什么?如果设置了 image (true) ... file('image')跨度>
    • @VikingCode 我不知道您正在阅读什么文档,但请继续阅读 laravel.com/docs/5.4/requests#files 我认为这会启发您。最佳实践是在执行任何操作之前先进行检查.. 最后你不能调用一个 null 的方法。
    猜你喜欢
    • 2015-01-15
    • 2015-09-27
    • 1970-01-01
    • 2021-09-24
    • 1970-01-01
    • 2015-03-28
    • 2015-05-07
    • 1970-01-01
    相关资源
    最近更新 更多