ホームページ >PHPフレームワーク >Laravel >Laravelのディンゴとは何ですか
laravelにおいて、dingoはlaravelおよびlumenフレームワーク用のAPI開発ツールキットであり、主にルーティングバージョン管理、「Http Exception」例外処理、応答フォーマット変換「Response Transform」の3つの機能を備えています。
#この記事の動作環境: Windows 10 システム、Laravel バージョン 6、Dell G3 コンピューター。
dingo は、laravel および lumen フレームワーク用の API 開発ツールキットです。
API 仕様に基づいてドキュメント ディレクトリを見ると、次の 3 つの主要な機能を中心に展開しています。
ルーティング バージョン管理
Http Exception 例外処理
Response Transform Conversion 応答形式
dingoapi は、laravel のオープンソース プラグインであり、検索できます。プロジェクトに取り組んでいるとき、プロジェクト内のバックエンドとフロントエンドの間で常に json データのやり取りが行われますが、この dingoapi は json のやり取りに非常に便利です。
#ルーティング バージョン管理
1. 関連構成
1API サービスの宣言API 仕様では、インターフェイス開発には API プレフィックス (http://XXX.com/api/xxx) またはサブドメイン名 (http://api.XXX.com/xxx) のいずれかを指定する必要があります。このような識別を通じて、 API インターフェース サービスのリクエストを表します。 したがって、API_PREFIX=api と API_DOMAIN=api.myapp.com のいずれかを設定する必要があります。設定が必要な可能性がある .env オプション もちろん、その役割は単なる識別子ではなく、dingo のルーティングと laravel のルーティングが共存していることがわかっており、dingo はこの機能を使用して を決定します。
2 バージョン管理
dingo は、http://XXX.com/api/xxx または http://api.XXX.com の場合、独自のルーティング サービスを提供します。 /xxx にアクセスすると API リクエストとみなされ、Dingo のルーティングサービス Dingo\Api\Routing\Router が、laravel 独自のルーティングサービス Illuminate\Routing\Router を引き継ぎます(引き継ぎ方法については後述します) 、get ()、post()、match()、group()... メソッドもあり、別のルーティング システムと同等です。 laravel がバージョンを区別する場合、http://XXX.com/api/v1 や http://XXX.com/api/v2 などの v1 プレフィックスを使用する必要がある場合があります。そして、dingo はヘッダー Accept を通じて処理されます。その形式は Accept: application/vnd.YOUR_SUBTYPE.v1 json です。これは、アクセスするには承認リクエスト ヘッダーを送信する必要があることを意味します。 設定ファイルでは、このモードはデフォルト (API_STRICT=false) では必須ではありませんが、アクセスできるのは設定ファイルのデフォルト バージョン ('version' => env('API_VERSION', 'v1) のみです) ')、。 true に設定した場合、つまり厳密モードがオンになった場合、accept ヘッダーを送信する必要があり、ブラウザーから API に直接アクセスすることはできません。.env 設定が必要な場合があるオプションAPI_STRICT=true //厳密モードを有効にするには、v1 または v2 に関係なく、accept ヘッダー情報を取得する必要がありますAPI_VERSION= v1 //バージョン番号が宣言されていない場合のデフォルトのバージョン番号厳密モードがオンになっている場合ヘッダーの accept 属性にはいくつかのオプションがあります。 Accept: application/vnd.YOUR_SUBTYPE.v1 jsonAPI_STANDARDS_TREE=x,prs,vnd 標準ツリー 標準ツリーAPI_SUBTYPE=myapp サブタイプ: プログラムの短縮名またはprojectv1 : バージョン番号json: 返される形式は jsonp
.env にすることもできます 設定が必要なオプション API_STANDARDS_TREE=prs API_SUBTYPE=laraAPI_DEFAULT_FORMAT=json //Default[関連する推奨事項:
laravel ビデオ チュートリアル ]
以上がLaravelのディンゴとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。