1

私には2つのルートがあります

 1. $api->get('usersInfo','App\Http\Controllers\ApiController@usersInfo');
 2. $api->get("checkboxbriefs/tbbid/{tbbid}","App\Http\Controllers\
 ApiController@testing");

私はこのように使用しています。

$api = app('Dingo\Api\Routing\Router');
$api->version('v1',function($api) {
$api->get('usersInfo','App\Http\Controllers\ApiController@usersInfo');
$api-    
>get("checkboxbriefs/tbbid/{tbbid}","App\Http\Controllers\
ApiController@testing");

}

私が追加しました

'providers' => [
    Dingo\Api\Provider\LaravelServiceProvider::class
]

プロバイダーで。

設定も修正しました。

次のように2番目のルートでエラーが発生しています:

"message":"Method [testing] does not exist.","status_code":500,"debug":

最初のルートは問題なく正常に動作しています。

4

1 に答える 1

2

そのような問題の解決策を探している人のために。

実装に問題はありません。コードをスローして、コントローラーのエラーを見つけてください。

別の名前で新しいコントローラーを作成し、そこに 1 つの関数を配置すると、その関数を呼び出すと、ルートに渡された変数値が取得されます。

少なくとも私の場合はそうでした。

単一の機能のみを含む別の名前の新しいコントローラーを作成しましたが、すべてが正常に機能した後、スクリプトにいくつかのエラーがあると想定して機能しました。

この種のエラーは、完全修飾クラス名を呼び出していないときに Laravel5.* バージョンで発生します。私が呼んだように

if (App::environment('local')) {
        ini_set('display_errors', E_ALL);
        error_reporting(1);

}

怒鳴る必要がある場所

if (\App::environment('local')) {
            ini_set('display_errors', E_ALL);
            error_reporting(1);
 }

エラーの例 {"message":"Class 'App\\Http\\Controllers\\App' not found","status_code":500}

于 2016-08-18T21:41:49.977 に答える