laravel解决跨域处理
laravel 跨域处理 ,不用第三方扩展包:
如果你想在Laravel中处理跨域请求而不使用第三方扩展包,你可以手动创建一个中间件来添加必要的CORS头部。以下是实现这一功能的步骤:
-
创建中间件: 使用Artisan命令创建一个新的中间件:
php artisan make:middleware Cors-
这将在
app/Http/Middleware
目录下创建一个名为Cors.php
的文件。 -
编辑中间件: 打开新创建的
Cors.php
文件,并添加以下代码来处理CORS头部:namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;class Cors
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle(Request $request, Closure$next)
{
return $next($request)
->header('Access-Control-Allow-Origin', '*') // 允许的来源域名
->header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS') // 允许的HTTP方法
->header('Access-Control-Allow-Headers', 'X-Requested-With, Content-Type, Accept, Authorization'); // 允许的HTTP头部
}
} -
请根据你的需求调整
Access-Control-Allow-Origin
、Access-Control-Allow-Methods
和Access-Control-Allow-Headers
的值。 -
注册中间件: 打开
app/Http/Kernel.php
文件,并在$middleware
数组中添加你的Cors
中间件protected $middleware = [
// 其他中间件
\App\Http\Middleware\Cors::class,
]; - 或者,如果你只想对特定的路由应用CORS,可以在
$routeMiddleware
数组中添加 -
protected $routeMiddleware = [
// 其他路由中间件
'cors' => \App\Http\Middleware\Cors::class,
];
-
-
posted on 2025-02-10 22:03 andydaopeng 阅读(39) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)