我想知道如何上传一个图像通过API邮递员在拉威尔和保存到我的数据库,这是phpMyAdmin。当我尝试在postman中运行代码时,会显示以下内容:
"image null"
这是我目前的代码:
横幅积垢控制器:
<?php
namespace App\Http\Controllers\Api;
use App\Http\Controllers\Controller;
use App\Models\Banner;
use Illuminate\Http\Request;
class BannerCRUDController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$banners = Banner::all();
return response($banners,200);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
//
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$data = $request->validate([
'id'=>'required',
'web_banner_profile'=>'required',
]);
$image = $request->file('image');
if($request->hasFile('image')) {
$new_name = rand() . '.' . $image->getClientOriginalExtension();
return response()->json($new_name);
}else{
return response()->json('image null');
}
$banners = Banner::create($data);
return response ($banners, 200);
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}
横幅型号:
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Banner extends Model
{
public $table = "webinar";
use HasFactory;
protected $fillable = [
'id',
'web_banner_profile',
];
}
任何关于我做错了什么的想法,我想现在就得到这个,因为我有很多表格需要创建。
希望有人能帮助我开始。谢谢。
错误是清除请求具有空图像。所以你应该选择关键类型文件在邮递员
在BannerCrudeController中将存储功能替换为以下内容。php
在存储器中创建图像
目录。
public function store(Request $request)
{
$data = $request->validate([
'id'=>'required',
'web_banner_profile'=>'required',
]);
$image = $request->file('image');
if($request->hasFile('image')) {
$image = $request->file('image');
$destinationPath = storage_path('images');
$fileName = str_random(6) . time() . "." . $image->getClientOriginalExtension();
$image->move($destinationPath, $fileName);
$banner = new Banner();
$banner->web_banner_profile = $fileName:
$banner->save()
return response()->json($fileName);
}else{
return response()->json('image null');
}
}
图像将上传到存储/图像
中。
您只需使用此代码上传图像,并在邮递员选择类型文件
public function store(Request $request)
{
$data = $request->validate([
'id'=>'required',
'web_banner_profile'=>'required',
]);
$image = $request->file('image');
if($request->hasFile('image')) {
$image = time() . '.' . $request->image-
>getClientOriginalExtension();
$request->image->move(public_path('Your Path'), $image);
$banner->image = 'Your Path' . $image;
return response()->json($image);
}else{
return response()->json('image null');
}
$banners = Banner::create($data);
return response ($banners, 200);
}
我对AWS很陌生,我在那个区域创建了s3 bucket,并将access keys区域传递到我的.env文件中,并编辑了conig/filesystems.php和我编写的用于发布数据的控制器,我的数据是混合型的,它包含二进制和普通数据,所以我有点困惑在postman中必须使用哪种内容类型(content-type=,在头内)。如果我使用普通content-type=application/jso
问题内容: 我必须使用JavaScript创建一个表单,用户将上载JPG文件并与其他信息(例如名称,电子邮件等)一起提交。当用户单击提交时,表单中的所有信息将被加载到值对象中。对于图像文件,我将其设置为。 所以假设: 我还设置了一个servlet来处理提交,但是我不确定如何开始。上传如何进行?用户提交时,如何获取图像信息?这是屏幕截图:http : //imageshack.us/f/32/776
我正在使用一个Vaadin上传组件,到目前为止,我已经成功地将一个图像上传到一个目录,并在成功上传后在面板组件中显示它。在这之后,我想做的是把它也插入到数据库中。我有一个名为Show的表,它有一个名称、日期和图像。在Show类中,我尝试将图像作为字节数组或Blob。 在上传成功的方法中,我想将文件转换为字节数组,到目前为止我已经尝试过了: 我也试过: uIP它实际上是我的上传ImagePresen
我的主要目标是使用Microsoft Graph API将。pptx/.docx/.pdf文件上传到Microsoft Sharepoint。我可以使用下面的“PUT”请求上传到简单的文本文件,其中的内容类型是多部分/表单数据 ---------------------------------404518839734975569926100内容-处理:表单-数据;name=“文件”;filenam
我试图上传一个文件到我的服务器使用一个endpoint通过Spring公开。然而,当我试图通过邮递员测试api时,我得到当前请求不是一个多部分请求错误。我通过这个问题多部分异常:当前请求不是多部分请求,但仍然无法修复此问题。请帮助。提前感谢。 这是我的控制器: 我的服务: 正如您在下面看到的,我将文件作为表单数据发送,并且没有设置任何标题
我尝试了什么:将其添加到@PostMapping()-->没有成功 在Postman中:添加了和 他们两个都没有成功:(... 问候,