【问题标题】:Call to undefined method BinaryFileResponse::header()调用未定义的方法 BinaryFileResponse::header()
【发布时间】:2018-12-30 21:36:56
【问题描述】:

我在更新 Maatwebsite Laravel 包后出现了一个问题,但他们确定这不是他们的包的问题。

我收到以下错误:在我的 ModifyHeadersMiddleware.php 文件中调用未定义的方法 Symfony\Component\HttpFoundation\BinaryFileResponse::header()。

这是通过以下控制器功能实现的:

public function summaryReport(){
    return Excel::download(new ClaimsExport, 'claims-report.xlsx');
}

我的出口是这样的:

<?php

namespace App\Exports;

use App\Claim;
use Maatwebsite\Excel\Concerns\FromView;
use Maatwebsite\Excel\Concerns\Exportable;
use Illuminate\Contracts\View\View;

class ClaimsExport implements FromView
{
    use Exportable;

    /**
    * @return \Illuminate\Support\Collection
    */
    public function view(): View
    {
        return view('exports.osd.claims', [
            'claims' => Claim::where('type',2)->where('status',1)->whereNotNull('shipmentID')->orderBy('claimDate','desc')->get()
        ]);
    }
}

这是在 ModifyHeadersMiddle.php 文件中出现的代码部分:

   public function handle($request, Closure $next)
{
    $headers = [
        'Access-Control-Allow-Origin'      => '*',
        'Access-Control-Allow-Methods'     => 'POST, GET, OPTIONS',
        'Access-Control-Allow-Credentials' => 'true',
        'Access-Control-Max-Age'           => '86400',
        'Access-Control-Allow-Headers'     => 'Content-Type, Authorization, X-Requested-With'
    ];

    if ($request->isMethod('OPTIONS')) {
        return response()->json('{"method":"OPTIONS"}', 200, $headers);
    }

    $response = $next($request);
    foreach($headers as $key => $value) {
        $response->header($key, $value);
    }

    return $response;
}

任何人都可以提供任何帮助,我将不胜感激。非常感谢!

【问题讨论】:

  • 它们在两个不同的中间件中,我不确定我会将他们的建议放在我的代码中的什么位置。我会在 cmets 中询问,但我没有足够的声誉。
  • 你试过这个$response-&gt;headers-&gt;set($key, $value);吗??

标签: laravel laravel-5 maatwebsite-excel


【解决方案1】:
use $response->headers->set().

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-16
    • 1970-01-01
    • 2017-09-21
    • 1970-01-01
    • 1970-01-01
    • 2017-04-17
    • 2012-07-27
    相关资源
    最近更新 更多