无法使用POSTMAN将文件保存在我的LARAVEL API文件夹中

时间:2019-08-28 15:44:39

标签: php laravel api file-upload postman

当我尝试将图像从POSTMAN上传到我的LARAVEL API时,我遇到了一个小问题,我正在很好地创建路径和名称,但是当发出POST请求时,图像并未保存在应该放置的文件夹中保存。

路线用于创建产品,并且图像与之对应:

路线:

Route::post('product/new','ProductController@store');

在我的控制器中:

    $product = new Product;
    $product->name = $request->input('name');
    //Other staff

    $file = $request->file('image');
    $extension = $file->getClientOriginalExtension();
    $filename = $product->name . '.' . $extension;
    $path = $file->move(public_path("/uploads/image/products/"), $filename);
    $product->image = $path;

和POSTMAN配置:

enter image description here

已经尝试使用以下内容配置内容类型标头:x-www-form-urlencoded,内容类型为multipart/form-data,不包含any Content type,而这3个都不起作用

我得到的结果是:

{
"id": 1,
"name": "test1",
//staff
"image": "/app/public/uploads/image/products/test1.png",
}

但是,如果我在此处进行检查:/app/public/uploads/image/products/没有保存的图像

预先感谢您:)

1 个答案:

答案 0 :(得分:0)

在请求中的文件上使用store方法,并为公共符号链接存储目录

$extension = $file->getClientOriginalExtension();
$filename = $product->name . '.' . $extension;
$request->image->storeAs('uploads/image/products/', $filename);

并运行php artisan storage:link