このシリーズでは、製品レベルの REST API TODO リスト、持続可能な拡張アーキテクチャを構築する方法を説明します。ルーティングとコード インターフェイスから始めて、mongo データベースと Badger データ レイヤーを追加します。次に、承認プロトコル層 (OAuth 2.0) です。
このシリーズでは、chi ルーティングを使用します。ルーティングに標準ライブラリ、Gin、または router-x の代わりに Chi を使用することを選択するのはなぜですか?
実は、何を使用するかは重要ではありません。ルーティングに何を使用する場合でも、このシリーズで説明する概念は役に立ちます。しかし、Chi-router がほとんどの代替手段よりも優れていると私が考える次のような利点があります。
はnet/http
標準ライブラリと 100% 互換性があります -- - net/http 互換の http またはミドルウェア pkg は Go エコシステムで使用できます。モジュラー/コンポーザブル API 用に設計 - ミドルウェア、インライン ミドルウェア、ルート グループ、サブルーターのインストール
#上記のコードは、いくつかのベスト プラクティスの焦点です
単一パッケージを使用して、次のことを行います。ルーティング ロジックを実装し、グループ化し、マウントします:
r.Mount("/api/todo", todo.Routes()).
というファイルに書きます。ハンドラーには func (w http.ResponseWriter,r *http.Request) という関数シグネチャがあります。これは、このハンドラーが標準ライブラリを使用する net/http 書き込みメソッドと何ら変わらないことを意味します。
その簡単さに怖気づいていませんか?このプロジェクトは GitHub https://github.com/tonyalaribe/todoapi/tre....
このシリーズの次の記事では、引き続き構成と共有状態をサポートします。通常、ほとんどのプロジェクトではデータベース接続などの追加構成が必要です。これについては次の記事で説明します。
推奨チュートリアル:「Go チュートリアル」
以上がGolang REST API アーキテクチャのエレガントな実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。