响应头名称“Access-Control-Allow-Origin”包含无效字符,中止请求

Pat*_*emi 2 heroku laravel laravel-5 laravel-middleware laravel-5.7

我有一个 Laravel 应用程序(部署在 heroku 上),我在其中收到了500 Internal Server error.

当我检查我的日志时,我在标题中看到错误方法:

响应头名称“Access-Control-Allow-Origin”包含无效字符,中止请求

我有cors middleware以下代码:

public function handle($request, Closure $next)
{
    header('Access-Control-Allow-Origin : *');
    header('Access-Control-Allow-Headers : Content-type, X-Auth-Token, Authorization, Origin');
    return $next($request);
}
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

Mar*_*łek 6

也许问题是之前的额外空间 :

但实际上你应该修改你的中间件以“Laravel 方式”来完成它。代替

header('Access-Control-Allow-Origin : *');
header('Access-Control-Allow-Headers : Content-type, X-Auth-Token, Authorization, Origin');
return $next($request);
Run Code Online (Sandbox Code Playgroud)

你应该使用:

return $next($request)
      ->header('Access-Control-Allow-Origin', '*')
      ->header('Access-Control-Allow-Headers', 'Content-type, X-Auth-Token, Authorization, Origin');
Run Code Online (Sandbox Code Playgroud)