我尝试使用Laravel 9在"postman"上使用"form-data"将数据发布到数据库,并尝试将数据返回到JSON。
这是我的控制器:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\M_Barang;
class Utama extends Controller
{
public function index() {
return view('Utama');
}
public function store(Request $request) {
$this->validate($request, [
'file' => 'required|max:2048'
]);
$file = $request->file('file');
$nama_file = time()."_".$file->getClientOriginalName();
$tujuan_upload = 'data_file';
if ($file->move($tujuan_upload,$nama_file)) {
$data = M_Barang::create([
'nama_produk' => $request->nama_produk,
'harga' => $request->harga,
'gambar' => $nama_file
]);
$res['message'] = "succsess!";
$res['values'] = $data;
return response($res);
}
}
}
我得到以下结果:
这是我的预期结果:
2条答案
按热度按时间7dl7o3gd1#
在Postman的header部分,您必须将content-type设置为application/json:
Image
eh57zj3b2#
您需要发送JSON格式的原始部分的数据,并尝试发送base64格式的图像(因为它非常方便的方式通过API将图像存储到文件系统中)。
示例:
{"profile_pic":"data:image/png;base64,iVBORw0KGgoAAAANSUh (base64 image string)"}
您可以在此处转换base64图像https://www.base64-image.de/,在Android和iOS中有一些库,用于在将数据发送到API时将图像转换为base64
提前欢迎。