titasgailius/laravel-stream-remote is a Laravel package for stream remote files.
It currently has 3 GitHub stars and 1.105 downloads on Packagist (latest version 1.0.0).
Install it with composer require titasgailius/laravel-stream-remote.
Discover more Laravel packages by titasgailius
or browse all Laravel packages to compare alternatives.
Last updated
With this package you can stream remote contents right from your Laravel application.
composer require titasgailius/laravel-stream-remote
The streamRemoteDownload method may be used to generate a response that turns contents of a remote resource to a downloadable response without having to write anything to disk.
This method accepts a url, file name and an optional array of headers as it's arguments:
return response()->streamRemoteDownload('https://example.com/remote/file.zip', 'archive.zip');
You may specify headers of the response, content-disposition value and chunk size of the streamed content:
return response()->streamRemoteDownload('https://example.com/remote/file.zip', 'archive.zip', [
'Content-Type' => 'application/zip'
], 'attachment', 1024);
This is a full signature of the streamRemoteDownload method:
public function streamRemoteDownload(
string $url,
string $name = null,
array $headers = [],
string $disposition = 'attachment',
int $chunk = 2048
): StreamedResponse;
This package is covered with tests that are store in tests directory.
Run ./vendor/bin/phpunit to run the test suite.