尝试通过API执行PUT请求上传模型时缺少文件 - Multipart/form-data Requests - Laravel/PHP

Ken*_*rna 2 php api file-upload laravel laravel-5

我正在使用Laravel作为Android应用程序的后端.

我想更新用户图片,但是当将文件+附加数据上传到我的后端时,请求中缺少该文件:

dd($request->hasFile('avatar')); // false
dd($request->File('avatar')); // null
Run Code Online (Sandbox Code Playgroud)

这是我在Postman中发送的(顺便说一句,我使用的是Passport):

// Headers
Accept: application/json
Authorization: Bearer {{token}}
Content-Type: multipart/form-data

// Body of the request
'avatar' -> the image (in postman)
Run Code Online (Sandbox Code Playgroud)

这是我的一些更新方法,即管理文件的部分:

public function update(Request $request)
{
    // ...

    if($request->hasFile('avatar')) 
    {
        $avatar = $request->file('avatar');
        $filename = time() . '.' . $avatar->getClientOriginalExtension();
        Image::make($avatar)->resize(300,300)->save('/path/' . $filename));
        $user->avatar = $filename;
    }

    // ...

    $user->save();

    // ...
}
Run Code Online (Sandbox Code Playgroud)

我不知道我做错了什么.提前致谢.

Ken*_*rna 7

经过一些研究,我可以使它工作,但使用POST请求添加_method = PUT为param(http://www.someurl.dev?_method=PUT).

带有文件的PUT请求无法正常处理 - 如果我没有错的话 - 故意

无论如何,这不是我正在寻找的解决方案..但至少工作.