Я хочу отправить изображение из моего собственного собственного приложения в бэкэнд моего laravel, для этого я извлекаю URI изображения и отправляю объект изображения, используя axios с другими строковыми данными, но запрос на публикацию не выполняется.зная, что когда я отправляю запрос на публикацию без изображения, все работает нормально.
РЕДАКТИРОВАТЬ: Я прокомментировал весь код в операторе if моей функции laravel и изменил его на простойвлияние на мою переменную $ picture: $ picture = "picture", но продукт не добавлен!это означает, что запрос даже не отправляется из моего приложения реакции, когда я предоставляю изображение.
моя собственная функция реагирования:
const config = { headers: { "Content-Type": "multipart/form-data" } };
// appending some string data ...
data.append("position", JSON.stringify(position));
// checking if the user took a picture ..
if (this.state.uri !== null) {
let filename = this.state.uri.split("/").pop();
data.append("picture", {
uri: this.state.uri,
name: filename,
type: "image"
});
} else {
data.append("picture", null);
}
// sending the request with axios to my backend ..
const response = axios.post("product/create", data, config);
моя функция laravel:
$user_id = $this->retrieveIdByToken($request->token);
$picture = null;
if ($request->hasFile("picture")){
$picture = $request->file("picture")->getFilename() . "_" . $user_id . "." . $request->file("picture")->extension();
Storage::putFileAs(
'/public/products/pictures/', $request->file('picture'),$picture
);
}
$product = Product::create([
'user_id' => $user_id,
'price' => $request->price,
'position' => json_decode(json_encode($request->position)),
'category_id' => $request->category_id,
'name' => $request->name,
'description' => $request->description,
'caracteristics' => json_decode(json_encode($request->caracteristics)),
'image' => $picture
]);