Расшифровка изображения Laravel Base64 не отображается в браузере
Я дословно скопировал некоторый пример кода, который сейчас не могу найти. В любом случае, вот часть моего CustomerController.php
use Illuminate\Support\Facades\File;
use Illuminate\Support\Facades\Storage;
`$photo = $customer['photo'];
// convert base64 and save to folder
$image_data = base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $photo));
//grab a new tmp file
$tmpFilePath=sys_get_temp_dir().'/'.uniqid();
//write the image to it
file_put_contents($tmpFilePath, $image_data);
//move it.
//give it a name
$mime_type = 'jpg';
$imageName = time().'.'.str_replace("image/","",$mime_type);
//or if using File facade
File::move($tmpFilePath, public_path("sq1/$imageName"));
Используя почтальон для тестирования, он возвращает успех, создает JPG, но не отображает изображение.
https://wv-mr.overair.ca/sq1/1543215074.jpg
Я использовал этот кодировщик (я хотел избавить вас от присоединения всей base64): https://www.browserling.com/tools/image-to-base64
Если это поможет, то я обнаружил, что фактическое изображение составляет 7 583 байта, а декодированное изображение - только 7 483 байта. Не уверен, почему 100 байт были потеряны во время декодирования.