как показать изображение из / storage / app / publi c в люменах? - PullRequest
0 голосов
/ 09 июля 2020

Я получил ответ от API в формате JSON, в котором указано имя файла, время создания, user_id и URL. Поэтому я хочу показать изображение из ответа в интерфейсе, поместив URL-адрес в <img src={props.generated} alt="image"/>. В моем коде внешнего интерфейса ничего не было неправильного, но изображение не было показано.

здесь URL моего изображения из ответа

http://localhost:8000/storage/public/user_3/1594265090.jpeg

и когда я получаю доступ к URL, здесь ответ в браузере

The requested resource /storage/public/user_3/1594265090.jpeg was not found on this server.

Здесь мой код

        $response = $this->client->request('POST', 'API', $data);

        $image = $response->getBody()->getContents();
        $filePath = 'public/' . $this->getUserDir();
        $fileName = time().'.jpeg';         

        if ($result = Storage::put($filePath . '/' . $fileName, $image)) {
                $generated =  $model::create([
                    'name' => $fileName,
                    'file_path' => $filePath,
                    'type' => 'motif',
                    'customer_id' => Auth::id()
                ]);

                return response($generated);

Изображение помещено в /storage/app/public, я уверен, что это происходит из-за расположения каталога. Я уже пытаюсь выполнить команду mklink /D "./storage/app/public" "./public/storage" и получил ответ Cannot create a file when that file already exists.

1 Ответ

0 голосов
/ 09 июля 2020

спасибо за ваше предложение в этом вопросе. Это уже было решено.

Я использую ln -rs ./storage/app/public ./public/storage. Но это команда Linux, поэтому я использую git bash в своем каталоге проекта и выполняю эту команду.

Результат решен, и я могу получить доступ к изображению.

...