Php-opencloud Object Storage скачать файл, GuzzleStream, как>

Как мне загрузить мой объект, используя Php-opencloud? http://docs.os.php-opencloud.com/en/latest/services/object-store/v1/objects.html

В документации я вижу.

$stream = $openstack->objectStoreV1()
                ->getContainer('{containerName}')
                ->getObject('{objectName}')
                ->download();

Он возвращает объект GuzzleStream. Как открыть окно для загрузки файла?

Когда я пытаюсь повторить поток, он возвращает искаженный текст %PDF-1.4 %�쏢 5 0 obj .........

1 ответ

Решение

Я просто добавляю заголовок и очищаю буфер

header('Content-Disposition: attachment; filename=' . basename($request));
    header("Content-Type: ".$mime);
    header('Cache-Control: must-revalidate');
    header('Pragma: public');
    header('Content-Length: ' . $file->getSize());
    ob_clean();
    flush();

    echo $file;

$file мой поток

Другие вопросы по тегам