Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Package Breaks My Download Function #48

Closed
HDVinnie opened this issue Nov 3, 2017 · 2 comments
Closed

Package Breaks My Download Function #48

HDVinnie opened this issue Nov 3, 2017 · 2 comments

Comments

@HDVinnie
Copy link

HDVinnie commented Nov 3, 2017

LogicException: The content cannot be set on a BinaryFileResponse instance. in /var/www/html/vendor/symfony/http-foundation/BinaryFileResponse.php:323

Stack -- | --

Stack trace: #0 /var/www/html/vendor/renatomarinho/laravel-page-speed/src/Middleware/PageSpeed.php(35): Symfony\Component\HttpFoundation\BinaryFileResponse->setContent('') #1 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(148): RenatoMarinho\LaravelPageSpeed\Middleware\PageSpeed->handle(Object(Illuminate\Http\Request), Object(Closure)) #2 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request)) #3 /var/www/html/vendor/renatomarinho/laravel-page-speed/src/Middleware/PageSpeed.php(26): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request)) #4 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(148): RenatoMarinho\LaravelPageSpeed\Middleware\PageSpeed->handle(Object(Illuminate\Http\Request), Object(Closure)) #5 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request)) #6 /var/www/html/vendor/renatomarinho/laravel-page-speed/src/Middleware/PageSpeed.php(26): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request)) #7 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(148): RenatoMarinho\LaravelPageSpeed\Middleware\PageSpeed->handle(Object(Illuminate\Http\Request), Object(Closure)) #8 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request)) #9 /var/www/html/vendor/renatomarinho/laravel-page-speed/src/Middleware/PageSpeed.php(26): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request)) #10 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(148): RenatoMarinho\LaravelPageSpeed\Middleware\PageSpeed->handle(Object(Illuminate\Http\Request), Object(Closure)) #11 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request)) #12 /var/www/html/vendor/bepsvpt/secure-headers/src/SecureHeadersMiddleware.php(21): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request)) #13 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(148): Bepsvpt\SecureHeaders\SecureHeadersMiddleware->handle(Object(Illuminate\Http\Request), Object(Closure)) #14 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request)) #15 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(30): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request)) #16 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(148): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle(Object(Illuminate\Http\Request), Object(Closure)) #17 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request)) #18 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(30): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request)) #19 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(148): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle(Object(Illuminate\Http\Request), Object(Closure)) #20 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request)) #21 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request)) #22 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(148): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle(Object(Illuminate\Http\Request), Object(Closure)) #23 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request)) #24 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(46): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request)) #25 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(148): Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle(Object(Illuminate\Http\Request), Object(Closure)) #26 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request)) #27 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request)) #28 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(151): Illuminate\Pipeline\Pipeline->then(Object(Closure)) #29 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(116): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request)) #30 /var/www/html/public/index.php(52): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request)) #31 {main}

My Controller Function that throws this error when using any of these middleware

    /**
    * Download torrent
    *
    * @access public
    * @param string $slug
    * @param int $id
    * @return file
    */
    public function download($slug, $id)
    {
        // Find the torrent in the database
        $torrent = Torrent::withAnyStatus()->findOrFail($id);
        // Grab Current User
        $user = Auth::user();
        // User's ratio is too low
        if ($user->getRatio() < config('other.ratio')) {
            return Redirect::route('torrent', ['slug' => $torrent->slug, 'id' => $torrent->id])->with(Toastr::warning('Your Ratio Is To Low To Download!!!', 'Error!', ['options']));
        }

        // User's download rights are revoked
        if ($user->can_download == 0) {
            return Redirect::route('torrent', ['slug' => $torrent->slug, 'id' => $torrent->id])->with(Toastr::warning('Your Download Rights Have Been Revoked!!!', 'Error!', ['options']));
        }

        // Torrent Status Is Rejected
        if ($torrent->isRejected()) {
            return Redirect::route('torrent', ['slug' => $torrent->slug, 'id' => $torrent->id])->with(Toastr::warning('This Torrent Has Been Rejected By Staff', 'Error!', ['options']));
        }

    // Define the filename for the download
    $tmpFileName = $torrent->slug . '.torrent';

    // The torrent file exist ?
    if (!file_exists(getcwd() . '/files/torrents/' . $torrent->file_name)) {
        return Redirect::route('torrent', ['slug' => $torrent->slug, 'id' => $torrent->id])
        ->with(Toastr::warning('Torrent File Not Found! Please Report This Torrent!', 'Error!', ['options']));
    } else {
        // Delete the last torrent tmp file
        if (file_exists(getcwd() . '/files/tmp/' . $tmpFileName)) {
            unlink(getcwd() . '/files/tmp/' . $tmpFileName);
        }
    }
    // Get the content of the torrent
    $dict = Bencode::bdecode(file_get_contents(getcwd() . '/files/torrents/' . $torrent->file_name));
    if (Auth::check()) {
        // Set the announce key and add the user passkey
            $dict['announce'] = route('announce', ['passkey' => $user->passkey]);
            // Remove Other announce url
            unset($dict['announce-list']);
    } else {
        return redirect('/login');
    }

    $fileToDownload = Bencode::bencode($dict);
    file_put_contents(getcwd() . '/files/tmp/' . $tmpFileName, $fileToDownload);
    return Response::download(getcwd() . '/files/tmp/' . $tmpFileName);
}</code></pre>
@renatomarinho
Copy link
Owner

You can use skip route.

@HDVinnie
Copy link
Author

HDVinnie commented Nov 3, 2017

will do....but any idea what causes this? Just curious is all.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants