当前位置: 首页 > 知识库问答 >
问题:

React应用程序和Laravel API发布CORS

宗政深
2023-03-14

我有一个React应用程序,位于http://localhost:3000/,而Laravel API位于http://localhost/blog/public/API/
我得到以下错误

CORS策略阻止了在“http://localhost/blog/public/api/auth/signin”从origin“http://localhost:3000”获取的访问:请求的资源上没有“access-control-allow-origin”标头。如果一个不透明的响应满足您的需要,请将请求的模式设置为“no-cors”以获取禁用CORS的资源。

以下是响应头:-

我通过htaccess,https://packagist.org/packages/barryvdh/laravel-cors进行了尝试

共有1个答案

高砚
2023-03-14

下面的解决方案可以解决Laravel中的CORS相关问题。

步骤1:创建新的中间件

‘Php artisan make:middleware cors’

第二步:

将下面放在创建的中间来替换handle方法

    public function handle($request, Closure $next) {
   
    return $next($request)
      ->header('Access-Control-Allow-Origin', '*')
      ->header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS')
      ->header('Access-Control-Allow-Headers',' Origin, Content-Type, Accept, Authorization, X-Request-With')
      ->header('Access-Control-Allow-Credentials',' true');
}

第三步:

然后转到kernel.php文件并将其添加到应用程序的全局HTTP中间件堆栈中。

附注。只添加了注释的最后一行,其他行都存在于前面。

protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
\App\Http\Middleware\TrimStrings::class,
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
\App\Http\Middleware\TrustProxies::class,
\App\Http\Middleware\Cors::class,//cors added here 
 ];

好好享受!

 类似资料:
  • 据我所知,在APK下的google开发者控制台中有一个名为“UNPUBLISH”的选项。 在添加ManageAPK之后,google实际上删除了对APK的访问。 不幸的是,我在生产中上传了APK而不是BETA版,我需要删除/取消发布该应用程序。 我怎么能做到呢? 解决这个问题的最佳流程是什么。 我检查了所有与我的问题类似的问题,但所有答案都过时了,因为古尔奇添加了Manage APK来代替APK。

  • 我用react Native做了一个应用程序。应用程序连接到我制作的api。我执行了以下步骤:https://facebook.github.io/react-native/docs/signed-apk-android,现在如果我执行react-native run-android-variant=release,应用程序就不工作了。有没有办法看看我有没有什么错误什么的? 我想要的应用程序的工作

  • 我正在尝试使用expo客户端在iphone上发布我的应用程序。当我将链接从我的mackbook发送到iphone时。我收到一个错误,说“加载请求的应用程序时出现问题。看起来您可能正在使用LAN URL。确保您的设备与服务器位于同一网络上或尝试使用隧道。”我在同一个网络上。我检查了两次网络。这些是我遵循的步骤1)我通过在终端窗口中给出“npm start”命令来启动应用程序。2)我选择选项“s”,然

  • 如果我错了,请纠正我,我需要使用一个抽象层的公共服务,对吗?例如,如果我需要使用IAP,我需要一个包装器类来决定使用GMS或HMS,这取决于设备类型。如果我这样做,我需要这样的东西: > 需要一个接口,该接口需要在HmsIAP和GmsIAP类上实现,用于requestProduct方法、PurchaseMethod等常见方法。等 创建这些类并管理要使用的类的父类。这将称为“Appiap”类。逻辑层

  • 我正在为一家公司开发iPhone应用程序,他们不想将应用程序发布到应用程序商店。因此,我以299美元注册了iphone企业开发者计划。我的问题是如何在不注册UDID的情况下向公司内部员工分发应用程序?要安装此iPhone应用程序,我是否需要通过邮件向单个应用程序用户发送带有配置文件的修改后的.app文件?我熟悉IOS开发者程序,但iPhone企业开发者程序的设计不允许您将应用发布到应用商店。因此,

  • 刚刚将一个应用程序从V12升级到V13-仅在帮助中进行文本更改。工作很好。 上传给开发人员。它不会发布新的APK,说: “无法发布此配置,原因如下:版本12未提供给任何设备配置:所有可能接收版本12的设备都将接收版本13。” 它在说什么?V12是针对40K+设备发布的,我刚刚对其他三个应用程序做了完全相同的事情,没有任何问题,但这一个不会有。 不知道这是什么意思。我能做的就是把它存为草稿。