1

REST API を構築する方法を探していたところ、skue(https://code.google.com/p/skue/) を見つけました。しかし、サイトにはあまり情報がありません。私の計画は、厳密には次のように残りの API を構築することです。

Models << Business logics << Restful Resources.

これが意味することは、モデルは によって排他的にアクセスされるということbusiness logicです。インターフェイスは、restful resourcesクライアントが直接アクセスできる唯一のレイヤーです。の使用を提案する人を避けるために、これらすべてを指定していappengine-rest-serverます。

私の質問は、Skue の使用に成功した人はいますか? もしそうなら、共有しても構わない例はありますか? GETPOST十分ですが、それ以上を歓迎します。そうでない場合Skue、google-app-engine の上にそのような REST API を構築できるフレームワークはありますか?

4

2 に答える 2

3

私はSkuëの作者です。Skuë は、私の国、コスタリカの先住民グループの言語であるブリブリ語で「ネズミ」を意味します。

サイトに十分な情報がないことはわかっています: (https://code.google.com/p/skue/)

独自のプロジェクトで使用したい開発者向け。これは単なるサイド プロジェクトであり、日常業務ではないため、適切なドキュメントを作成する時間がなかったことをお詫びします。

ただし、使用できるように、立ち上げのお手伝いをさせていただきます。最初に気付くのは、ソース コードの一部である小さな例です。サイトに移動し、[ソース] -> [参照] をクリックして、「アプリ」ブランチを展開します。

「app」フォルダー内のコードは、独自の API 実装を表します。パッケージ「skue」にはライブラリの実際の実装が含まれているため、基本的には、Google App Engine 用の Python プロジェクトを作成し、skuë パッケージをそのプロジェクトに直接含めるだけです。

ダウンロードした main.py: main.py on Skuë projectのコンテンツで main.py ファイルを上書きします 。

そのファイルの最も重要な部分は、リソース実装への独自のルートを配置する場所です。ここで、「ContactResource」の使用に注意してください。

TASK_HANDLERS = [

                ]

API_HANDLERS = [
                   ('/contacts/(.*)', ContactResource)
               ]

API_DOC = [ ('/', ApiDocumentationResource) ]

連絡先リソースの実装を参照します。

ボンネットの下で多くのことが起こっています..しかし、アイデアはあなたがそれらについて心配しないことです.

作成するリソースの種類に応じて、適切な Resource 親クラスから継承する必要があります。4 つの基本的なタイプがあります。

DocumentResource:ドキュメント リソースは、オブジェクト インスタンスまたはデータベース レコードに似た単一の概念です。

CollectionResource:コレクション リソースは、リソースのサーバー管理ディレクトリです。クライアントは、コレクションに追加する新しいリソースを提案する場合があります。ただし、新しいリソースを作成するかどうかを選択するのはコレクション次第です。

StoreResource:ストアは、クライアント管理のリソース リポジトリです。ストア リソースを使用すると、API クライアントはリソースを入れたり、戻したり、いつ削除するかを決定したりできます。

ControllerResource: コントローラー リソースは、手続き型の概念をモデル化します。コントローラ リソースは、パラメータと戻り値を持つ実行可能な関数のようなものです。入力と出力。

従来の Web アプリケーションでの HTML フォームの使用と同様に、REST API はコントローラー リソースに依存して、標準メソッド (CRUD とも呼ばれる作成、取得、更新、および削除) のいずれかに論理的にマップできないアプリケーション固有のアクションを実行します。

次に、 ContactResource の例での「describe_resource」の実装を見てみましょう。上記の基本的なリソース タイプから継承する場合、次のステップは、そのメソッドを使用して外部世界にリソースをプログラムで記述することです。基礎となる Skuë 実装は、そのメソッドを使用して必要なパラメーターを検証し、OPTIONS リクエストを実行するときにエンドポイントを自己記述します。

最後のステップは、リソースに対して処理するメソッド (CRUD) を実装することです。

再び ContactResource の例では、そのリソースが Contact アイテムの作成、更新、および読み取りを処理します。

これが、少なくともライブラリの使用を開始する方法を理解するのに役立つことを願っています. ただし、将来的にはより良いチュートリアルを作成します。

それまでの間、 greivin.lopez@gmail.comまで電子メールでご連絡いただければ、より詳細な例、またはお客様の要件に合ったものをお送りします。

重要な注意: 現在、Skuë プロジェクトは JSON 形式の応答のみをサポートしています。別の形式を使用する場合は、それを処理するための適切なクラスを作成する必要があります。

コスタリカからのご挨拶。

于 2012-11-29T01:40:16.593 に答える
1

は使用していませんが、探しているものはGoogle Cloud Endpointsskueに適しているように思えます。詳細については、この件に関する以前の回答を参照してください。

于 2012-11-26T18:08:01.440 に答える