简体   繁体   中英

Laravel cannot find “Class 'Zttp\Zttp' not found” but it is installed by composer

I am creating a card for Laravel Nova.

I have created a simple API route that will call an endpoint and return a response.

api.php

<?php

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use Zttp\Zttp;

/*
|--------------------------------------------------------------------------
| Card API Routes
|--------------------------------------------------------------------------
|
| Here is where you may register API routes for your card. These routes
| are loaded by the ServiceProvider of your card. You're free to add
| as many additional routes to this file as your card may require.
|
*/

 Route::get('/endpoint', function (Request $request) {
     $response = Zttp::get('https://novapackages.com/api/recent');
        return $response->json()['data'];
 });

But when I hit that route I get the error:

Class 'Zttp\\Zttp' not found

This is what my composer.json looks like:

{
    "name": "jachno/test-http-card",
    "description": "A Laravel Nova card.",
    "keywords": [
        "laravel",
        "nova"
    ],
    "license": "MIT",
    "require": {
        "php": ">=7.1.0",
        "kitetail/zttp": "^0.3.0"
    },
    "autoload": {
        "psr-4": {
            "Jachno\\TestHttpCard\\": "src/"
        }
    },
    "extra": {
        "laravel": {
            "providers": [
                "Jachno\\TestHttpCard\\CardServiceProvider"
            ]
        }
    },
    "config": {
        "sort-packages": true
    },
    "minimum-stability": "dev",
    "prefer-stable": true
}

This must be something obvious, I have based what I am doing on this repo

https://github.com/tightenco/nova-package-discovery

and that is doing almost exactly what I am doing. I say almost as there must be some difference but I can't find it.

I have also posted a complete repo including the vendor dir etc.

After viewing your composer.lock , I'm sure you are doing composer update on your package.

Try to composer update from your Laravel project, not from your package.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM