Я написал запрос на публикацию, и когда я публикую свои данные от почтальона, все работает нормально, но файл не был успешно отправлен:
это метод, который я написал:
public function create(Request $request)
{
try{
$validation = Validator::make($request->all(), [
'brand_id' => 'required',
'title' => 'required|max:255',
'description' => 'required|max:512',
'colors' => 'required',
'size' => 'required',
'price' => 'required',
'file' => 'required|file|mimes:jpeg,png,jpg,gif,svg,xlsx,xls,doc,docx,ppt,pptx,txt,pdf|max:1000048',
]);
if ($validation->fails()) {
$errors = $validation->errors();
return $this->respondWithError($errors);
} else {
$product = new products();
$product->user_id = $this->user_id;
$product->brand_id = $request->input('brand_id');
$product->title = $request->input('title');
$product->description = $request->input('description');
$product->colors = $request->input('colors');
$product->size = $request->input('size');
$product->price = $request->input('price');
$doc = $request->document;
$table_name = 'test';
$record_id = 1;
return $this->respondWithSuccess($request);
$path = $this->dms->storeFile($doc, $table_name, $record_id);
$product->image_urls = $path;
$product->save();
return $this->respondWithSuccess($product);
}
} catch (Exception $ex) {
return $this->respondWithError($ex->getResponse());
}
}
это полный метод.
это маршрут, который я создал для доступа к этому методу:
Route::post('products/create', 'ProductsController@create');
этот маршрут является маршрутом API.
и, наконец, я звоню почтальону так:
Голова:
Content-Type: применение / х-WWW-форм-urlencoded
Accept: приложения / JSON
и в теле я передаю все данные и файл
Я возвращаю объект запроса, и он возвращается так:
{
"message": "",
"status": "success",
"response": {
"brand_id": "1",
"title": "test",
"description": "test description",
"colors": "red",
"size": "25",
"price": "30",
"file": {}
}
}