You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何移除Laravel框架ShowRfqController控制器的身份验证限制

解决方法

你当前访问被重定向到登录页,是因为Laravel的auth身份验证中间件作用在了你这两个控制器方法上,按下面的操作即可移除限制:

方案1:在控制器中排除验证

在你的ShowRfqController控制器里增加构造方法,指定身份验证中间件排除当前两个公开方法即可,修改后控制器代码如下:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Models\rfq;
use App\Models\customer_rfq;

class ShowRfqController extends Controller
{
    public function __construct()
    {
        // 仅对除inforfq、customer_inforfq之外的方法启用身份验证
        $this->middleware('auth')->except([
            'inforfq',
            'customer_inforfq'
        ]);
    }

    public function inforfq($name)
    {
        $rfq = rfq::find($name);
        return view('frontend.sellershowrfq',compact('rfq'));
    }

    public function customer_inforfq($name)
    {
        $customer_rfq = customer_rfq::find($name);
        return view('frontend.customershowrfq',compact('customer_rfq'));
    }
}

方案2:修改路由配置移除验证

如果你的身份验证是在路由文件中统一配置的,就找到routes/web.php文件,把这两个路由从auth中间件分组中移出来,单独配置即可:

// 注意不要把这两个路由放在 Route::middleware(['auth']) 分组内
use App\Http\Controllers\ShowRfqController;

Route::get('/inforfq/{name}', [ShowRfqController::class, 'inforfq']);
Route::get('/customer_inforfq/{name}', [ShowRfqController::class, 'customer_inforfq']);

完成任意一种操作后,执行命令清空路由缓存即可生效:

php artisan route:clear

内容的提问来源于stack exchange,提问作者indrajeet singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 16:36:04