【问题标题】:Laravel Production, CORS No 'Access-Control-Allow-Origin' headerLaravel 生产,CORS 没有“访问控制允许来源”标题
【发布时间】:2021-07-18 23:05:31
【问题描述】:

在 Heroku 上部署我的 Laravel API 应用程序后,Cors 似乎出现了问题。这在开发中没有问题,我仍然可以在邮递员上使用已部署的应用程序,但不能通过我的 Angular 应用程序上的常规 HTTP 请求。

我的 Cors.php 是没有被修改过的

   'paths' => ['api/*', 'sanctum/csrf-cookie'],

    'allowed_methods' => ['*'],

    'allowed_origins' => ['*'],

    'allowed_origins_patterns' => ['*'],

    'allowed_headers' => ['*'],

    'exposed_headers' => [],

    'max_age' => 0,

    'supports_credentials' => true,

我的 Kernel.php 使用 HandleCors 类

 protected $middleware = [
        // \App\Http\Middleware\TrustHosts::class,
        \Fruitcake\Cors\HandleCors::class,
        \App\Http\Middleware\TrustProxies::class,
        \App\Http\Middleware\PreventRequestsDuringMaintenance::class,
        \Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
        \App\Http\Middleware\TrimStrings::class,
        \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
    ];

不确定我的 Angular 应用是否需要进一步更改,因为它正在使用邮递员,所以调用看起来像这样

  // User registration
  register(user: User): Observable<any> {
    return this.http.post('https://secure-fortress-48055.herokuapp.com/api/register', user);
  }

关于如何解决这个问题的任何想法?

【问题讨论】:

  • 请将所有内容发布为文本,而不是图像,以帮助人们帮助您。
  • 这个问题你解决了吗?我目前面临同样的问题

标签: php laravel http heroku cors


【解决方案1】:

你能发布你的 .env 文件吗? 我认为您需要修改 .env 文件并更改以下代码

APP_URL=http://localhost

APP_URL=https://secure-fortress-48055.herokuapp.com/

你还需要更改 Cors.php

    'exposed_headers' => [],

    'exposed_headers' => ['Access-Control-Allow-Origin'],

也许这会对你有所帮助

【讨论】:

【解决方案2】:

我通过在 api.php 路由中添加标头解决了这个问题

header('Access-Control-Allow-Origin:  *');
header('Access-Control-Allow-Methods:  POST, GET, OPTIONS, PUT, PATCH, DELETE');
header('Access-Control-Allow-Headers: Accept, Content-Type, X-Auth-Token, Origin, Authorization');

也许不是最优雅的解决方案,但它是一个。

【讨论】:

    猜你喜欢
    • 2019-02-09
    • 2016-06-27
    • 1970-01-01
    • 1970-01-01
    • 2019-05-28
    • 2020-11-26
    • 2018-08-10
    • 2018-03-19
    • 2020-11-02
    相关资源
    最近更新 更多