为了账号安全,请及时绑定邮箱和手机立即绑定

流明不会从发送的表单数据中接收任何文件

流明不会从发送的表单数据中接收任何文件

PHP
撒科打诨 2022-08-05 16:00:22
我在chrome中检查了标题为表单数据发送的内容,如下所示:现在看起来在我的POST请求中有一个名为“files”的图像文件。现在,在Lumen的控制器中,我执行以下调试以尝试获取文件:return response([$request->hasFile('files'), $request->file('files'), $request->get('files')]);然而,我在回应中得到的是这样的:[true,{},null]这是我在 react 应用程序中提出的请求:const formData  = new FormData();formData.append("files", this.state.productData[key][0]);        fetch(`${process.env.REACT_APP_API_URL}/products/submit`, {            method: 'POST',            body: formData,        })有谁知道我为获得图像所做的一切出了什么问题?
查看完整描述

1 回答

?
芜湖不芜

TA贡献1796条经验 获得超7个赞

该方法返回类的一个实例,并在响应中显示为 a,但您的文件已上传,当 is 有效时,因此您可以检索其属性,如下所示:$request->file()Illuminate\Http\UploadedFile{}$request->hasFile()true


if ($request->hasFile('files')) {

    $files = $request->file('files');


    return response()->json([

        'path' => $files->path(),

        'name' => $files->getClientOriginalName(),

        'size' => $files->getSize()

    ]);

}

或者,如果要以文件的形式获取响应:


if ($request->hasFile('files')) {

    return response()->file(

        $request->file('files')->path()

    );

}

请参阅 Laravel 文档以检索和存储上传的文件。


注意:我建议使用名称以外的名称,因为这是该类的实例,当您要用作 的速记时,会导致冲突。files$request->filesSymfony\Component\HttpFoundation\FileBag$request->files$request->file('files')


查看完整回答
反对 回复 2022-08-05
  • 1 回答
  • 0 关注
  • 165 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号