Better handling of file download requests

This commit is contained in:
Dane Everitt 2018-03-01 19:19:19 -06:00
parent 838b9a9093
commit 85bdbdce14
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
6 changed files with 56 additions and 31 deletions

View file

@ -9,6 +9,7 @@
namespace Pterodactyl\Http\Controllers\Server\Files;
use Ramsey\Uuid\Uuid;
use Illuminate\Http\Request;
use Illuminate\Cache\Repository;
use Illuminate\Http\RedirectResponse;
@ -46,8 +47,9 @@ class DownloadController extends Controller
$server = $request->attributes->get('server');
$this->authorize('download-files', $server);
$token = str_random(40);
$token = Uuid::uuid4()->toString();
$node = $server->getRelation('node');
$this->cache->put('Server:Downloads:' . $token, ['server' => $server->uuid, 'path' => $file], 5);
return redirect(sprintf('%s://%s:%s/v1/server/file/download/%s', $node->scheme, $node->fqdn, $node->daemonListen, $token));