You need to enable JavaScript to run this app. Laravel开发Shopify应用出现Target class [auth.shop] does not exist报错求助
优惠活动
大模型
产品
解决方案
定价
更多

Laravel开发Shopify应用出现Target class [auth.shop] does not exist报错求助

报错原因

osiset/laravel-shopify v17及以上版本弃用了原有的auth.shop中间件默认别名配置,框架无法通过别名找到对应的中间件类,因此抛出绑定解析异常。

解决方案

你可以任选以下任意一种方法修复该问题:

  • 方法1:替换路由中间件为完整类名
    修改routes/web.php文件,引入中间件的完整类名替换原有别名:
    <?php
    
    use Illuminate\Support\Facades\Route;
    use Osiset\ShopifyApp\Http\Middleware\AuthShop;
    
    Route::get('/', function () {
        return view('welcome');
    })->middleware([AuthShop::class])->name('home');
    
  • 方法2:手动注册auth.shop中间件别名
    打开app/Http/Kernel.php文件,在$routeMiddleware数组中追加别名配置:
    protected $routeMiddleware = [
        // 此处保留项目原有其他中间件配置
        'auth.shop' => \Osiset\ShopifyApp\Http\Middleware\AuthShop::class,
    ];
    
    配置完成后无需修改原有路由代码即可正常运行。
  • 方法3:替换为默认注册的verify.shopify中间件
    若你的场景符合包提供的通用Shopify身份校验规则,直接将路由中的auth.shop替换为verify.shopify即可,该别名在v17版本中默认已注册,无需额外配置。

内容的提问来源于stack exchange,提问作者Davi Amaral

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.10 18:54:00