2017-09-15 5 views
1

Ich benutze Dingo, um eine API aufzubauen und bis zu diesem Punkt hatte ich keine Probleme mit den Routen, bis ich versuche, Show in den Controller hinzuzufügen, ich bekomme nur eine 404 .Laravel Dingo API Route 404 für @show

Einzelheiten hier:

{ 
    "error": { 
     "message": "404 Not Found", 
     "status_code": 404, 
     "debug": { 
      "line": 179, 
      "file": "/var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php", 
      "class": "Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException", 
      "trace": [ 
       "#0 /var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Routing/Router.php(546): Illuminate\\Routing\\RouteCollection->match(Object(Dingo\\Api\\Http\\Request))", 
       "#1 /var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Routing/Router.php(525): Illuminate\\Routing\\Router->findRoute(Object(Dingo\\Api\\Http\\Request))", 
       "#2 /var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Routing/Router.php(511): Illuminate\\Routing\\Router->dispatchToRoute(Object(Dingo\\Api\\Http\\Request))", 
       "#3 /var/www/html/myapi/api/vendor/dingo/api/src/Routing/Adapter/Laravel.php(81): Illuminate\\Routing\\Router->dispatch(Object(Dingo\\Api\\Http\\Request))", 
       "#4 /var/www/html/myapi/api/vendor/dingo/api/src/Routing/Router.php(513): Dingo\\Api\\Routing\\Adapter\\Laravel->dispatch(Object(Dingo\\Api\\Http\\Request), 'v1')", 
       "#5 /var/www/html/myapi/api/vendor/dingo/api/src/Http/Middleware/Request.php(126): Dingo\\Api\\Routing\\Router->dispatch(Object(Dingo\\Api\\Http\\Request))", 
       "#6 /var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(114): Dingo\\Api\\Http\\Middleware\\Request->Dingo\\Api\\Http\\Middleware\\{closure}(Object(Dingo\\Api\\Http\\Request))", 
       "#7 /var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(46): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Dingo\\Api\\Http\\Request))", 
       "#8 /var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(148): Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode->handle(Object(Dingo\\Api\\Http\\Request), Object(Closure))", 
       "#9 /var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Dingo\\Api\\Http\\Request))", 
       "#10 /var/www/html/myapi/api/vendor/dingo/api/src/Http/Middleware/Request.php(127): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))", 
       "#11 /var/www/html/myapi/api/vendor/dingo/api/src/Http/Middleware/Request.php(103): Dingo\\Api\\Http\\Middleware\\Request->sendRequestThroughRouter(Object(Dingo\\Api\\Http\\Request))", 
       "#12 /var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(148): Dingo\\Api\\Http\\Middleware\\Request->handle(Object(Illuminate\\Http\\Request), Object(Closure))", 
       "#13 /var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))", 
       "#14 /var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))", 
       "#15 /var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(151): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))", 
       "#16 /var/www/html/myapi/api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(116): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))", 
       "#17 /var/www/html/myapi/api/public/index.php(54): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))", 
       "#18 {main}" 
      ] 
     } 
    } 
} 

hier ist ein Teil meiner Route Datei api.php

$api->group(['middleware' => 'jwt.auth'], function(Router $api) { 
    $api->get('protected', function() { 
     return response()->json([ 
      'message' => 'Access to protected resources granted! You are seeing this text as you provided the token correctly.' 
     ]); 
    }); 

    $api->get('refresh', [ 
     'middleware' => 'jwt.refresh', 
     function() { 
      return response()->json([ 
       'message' => 'By accessing this endpoint, you can refresh your access token at each request. Check out this response headers!' 
      ]); 
     } 
    ]); 

    $api->get('leads', 'App\\Api\\V1\\Controllers\\[email protected]'); 
    $api->get('leads/{$id}', 'App\\Api\\V1\\Controllers\\[email protected]'); 
    $api->post('leads/store', 'App\\Api\\V1\\Controllers\\[email protected]'); 
    $api->put('leads/update/{$id}', 'App\\Api\\V1\\Controllers\\[email protected]'); 
    $api->post('leads/update/{$id}', 'App\\Api\\V1\\Controllers\\[email protected]'); 
}); 

Und die Show Spaß ction in der Steuerung: LeadController.php

public function show(Lead $leads, $id) 
    { 
     dd($id); 

     $lead = Lead::with('user', 'source', 'industry', 'status')->find($id); 

     //if(!$lead) 
     // return $this->response->error('invalid_data', 400); 

     //return fractal($lead, new LeadTransformer())->respond(); 
    } 

ich versucht habe eine Die'n'Dump zu tun die ID kommt durch, um sicherzustellen, aber es scheint nicht so weit zu bekommen. Sowohl @index als auch @store funktionieren problemlos und wenn ich LeadController @ index zu LeadController @ show ändere, funktioniert die Route und ich bekomme natürlich den Fehler bezüglich des zweiten Parameters.

Wirklich ratlos, warum dies nicht funktioniert, so würde Hilfe hier wirklich geschätzt werden.

Antwort

0

Wow, von zu hart suchen, und nicht genug Schlaf, der Grund, warum es nicht funktioniert hat, weil die Variable als {$ id} nicht {id} wie es hätte eingestellt wurde sollte gewesen.

Wenn diese Variablen verwenden, do nicht die $ Zeichen verwenden!

Verwandte Themen