Quiero actualizar/cargar una imagen usando el cliente http laravel. Actualicé los datos pero la imagen no está actualizada. las API son de tipo blob. Intenté usar el archivo de datos de formulario en cartero y funcionó. pero no sé por qué no funciona en mi aplicación laravel.
este es mi codigo
$image = $request->file('profile_image'); if ($image != null) { $contents = $image->openFile()->fread($image->getSize()); } $response = Http::withToken($request->session()->get('user'))->acceptJson()->attach('image', file_get_contents($image))->post("https://voice.infidea.id/api/gateway/update-user", [ 'id' => $user['id'], 'name' => $request->name, 'email' => $request->email, 'contact' => $request->contact ]);Intento usar el contenido de $ también, pero todavía no funcionó. solo los datos de la cadena que se actualizaron.
por favor, ¿alguien sabe por qué es así? Por favor, ayuda. Realmente lo aprecio.
Debe especificar la ruta completa del archivo para file_get_contents (), cambie a esto
file_get_contents($request->file('profile_image')->getRealPath())); // or file_get_contents($request->profile_image->path());Simplemente coloque la ruta temporal o la ruta completa de la imagen
$response = Http::withToken($request->session()->get('user'))->acceptJson()->attach('image', file_get_contents($request->file('profile_image')->getRealPath()))->post("https://voice.infidea.id/api/gateway/update-user", [ 'id' => $user['id'], 'name' => $request->name, 'email' => $request->email, 'contact' => $request->contact ]);Creo que el valor de $image = $request->file('profile_image'); no está configurado porque el cartero usa image .