2017-07-20 7 views
0

Ich erstelle eine Api mit Slimphp. Ich habe die doc- und Client + Server-Dateien mit Swagger.io generiert. Jetzt versuche ich, einige Strecken zu bedienen und es gibt mir einen FehlerSwagger + Slimframework Fehler auf der Route

Catchable fatal error: Argument 1 passed to App\v1\Api\ContactApi::__construct() must be an instance of App\v1\lib\ApiClient, instance of Slim\Container given, called in C:\xampp\htdocs\DigitalMade\vendor\slim\slim\Slim\CallableResolver.php on line 64 and defined in C:\xampp\htdocs\DigitalMade\app\v1\Api\ContactApi.php on line 55

Die Route verwendet:

$this->GET('', App\v1\Api\ContactApi::class.':getContactAsList');

Link zu Klassen - ApiClient: https://gist.github.com/miorac/d2232ca71a3feaa0500f9f992d0a7e87 - ContactApi: https://gist.github.com/miorac/c9373136ed2b694f59a2fbb0dfea3ebe

Weiß jemand, was mache ich falsch?

Antwort

1

Sie benötigen ein Werk mit dem Container zu registrieren, die die ContactApi

Etwas Ähnliches implementiert:

$container = $app->getContainer(); 
$container[App\v1\Api\ContactApi::class] = function ($c) { 
    $apiClient = new App\v1\lib\ApiClient(); 
    return new App\v1\Api\ContactApi($apiClient); 
} 

nimmt dann diese Fabrik verwenden, um das ContactApi Objekt zu instanziiert, bevor das Routing.

+0

DUDE, ICH LIEBE DICH <3 –

Verwandte Themen