そのため、Google App Engineアプリケーションの作成に取り組んでおり、「公開」という用語に何度も出くわしました。 "最初のアプリはHTTPベースのAPIを使用してオブジェクトを公開できます"および "REST APIを介してこのデータモデルクラスを公開します。"とはどういう意味ですか?特定のアクションが関連付けられていますか?それはデザインの抽象的な部分ですか?
つまり、何らかの方法でオブジェクトにアクセスできるようにします。あなたの例では、HTTPプロトコルを使用して、オブジェクトとやり取りするための事前定義された方法を介して、ユーザーに オブジェクトの作成、読み取り、更新、または削除 (通常はCRUDと省略)を許可できます( [〜#〜] api [〜#〜] )。
そのAPIは一連のルールに準拠することができます。 RESTful APIは HTTP動詞 を使用してオブジェクトに対していくつかのアクションを実行し、 いくつかの原則 に準拠しますこれは、リソースをどのように識別/表現するか、およびそれらの表現を通じてリソースをどのように操作するかを示しています。
Webアプリケーションのコンテキストで、データベースにブログ投稿が保存されているとします。アプリケーションのユーザーがそれらの投稿を使って何かをできるようにしたいとします。彼らは必ずしもWebサイトを使用する必要はありませんが、おそらくアプリケーションに接続する独自のアプリケーション(ブログリーダープログラムなど)を使用できます。 。
アプリケーションの所有者として、アプリケーションにアクセスできるインターフェースを定義できます。たとえば、一部のユーザーがブログ投稿を読み書きするためのオプションを追加できます。インターフェースは次のようになります(より複雑なAPIの例については、 TwitterのAPI定義 を参照):
GET /posts/{number} HTTP/1.1
がリクエストされた場合、事前定義された形式で、ID {number}
を使用して投稿オブジェクトの表現を提供します実際のデータベースオブジェクトもアプリケーションオブジェクトも提供していないことに注意してください。オブジェクトの表現を提供している
POST /posts HTTP/1.1
付きのtitle={text1}&body={text2}
がWebアプリケーションに投稿されると、本文に{text1}
を含む{text2}
というタイトルの新しい投稿オブジェクトを作成し、新しく作成された投稿のID値ここでも、オブジェクトの操作表現をユーザーに許可します。ユーザーは、オブジェクトが実際にどのように見えるかを知る必要はありません(つまり、ユーザーのインターフェースによって離れて)。
オブジェクトを公開するとは、オブジェクトにアクセスして操作するためのインターフェースをユーザーに提供することです。そのインターフェイスが、オブジェクトの表現とそのオブジェクトを公開するアプリケーションの状態に関する追加の事前定義された条件を満たしている場合、そのインターフェイスはREST(またはRESTful)APIと呼ばれます。
ここでの「公開」とは、通常の英語での意味を意味します。他の方法ではアクセスできない場所にアクセスを許可します。
たとえば、「最初のアプリはHTTPベースのAPIを使用してオブジェクトを公開できる」とは、別のマシンの誰かが適切なWebページを要求することにより、マシン上のオブジェクトを操作できることを意味します。