エンドポイントとは何ですか?


172

私はOAuthについて読んでいて、エンドポイントについて話し続けています。エンドポイントとは何ですか?


2
私はこのような古い投稿につまづき続け、なぜこの種の投稿が常に過去に賛成票を投じられているのか理解できませんが、これが現在の投稿である場合は間違いなく打ちのめされ、反対票が投じられるでしょう。
tnkh

6
多分それは他の人々が持っている質問でもあるので賛成です。それがポイントではないですか?
Nora McDougall-Collins

回答:


74

これまでに投稿された回答はすべて正解です。エンドポイントは通信チャネルの一端にすぎません。OAuthの場合、注意する必要がある3つのエンドポイントがあります。

  1. 一時的な認証情報リクエストURI(OAuth 1.0aコミュニティ仕様ではリクエストトークンURLと呼ばれます)。これは、サーバー/サービスプロバイダーから不正なリクエストトークンを取得するためにリクエストを送信するURIです。
  2. リソース所有者承認URI(OAuth 1.0aコミュニティ仕様ではユーザー承認URLと呼ばれます)。これは、Temporary Credential Request URIから取得したリクエストトークンを承認するためにユーザーに指示するURIです。
  3. トークン要求URI(OAuth 1.0aコミュニティ仕様ではアクセストークンURLと呼ばれます)。これは、承認されたリクエストトークンをアクセストークンと交換するためにリクエストを送信するURIであり、保護されたリソースへのアクセスを取得するために使用できます。

それが物事を明確にするのに役立つことを願っています。OAuthについて楽しく学んでください。OAuthクライアントの実装で問題が発生した場合は、さらに質問を投稿してください。


5
なぜそれを(「エンドポイント」と呼ばれる)「ベースURI」と呼ばないのですか?「エンドポイント」と「ベースURI」の間に根本的な違いはありますか?ありがとう。
2015

@Xlsx実装によって異なります。リクエストの例としては、「/ users?name = admin」または「/ users / admin」を取得することができます。あなたはどちらか一方、または両方、あるいは両方を行うことができます。
Burak

2
OPは特に「OAuth」ではなく「一般的なエンドポイント」を要求するため、有用ではありません。私は今混乱しています。

309

みんなに来て:)例によってそれをもっと簡単にすることができます:

/this-is-an-endpoint
/another/endpoint
/some/other/endpoint
/login
/accounts
/cart/items

ドメインの下に置くと、次のようになります。

https://example.com/this-is-an-endpoint
https://example.com/another/endpoint
https://example.com/some/other/endpoint
https://example.com/login
https://example.com/accounts
https://example.com/cart/items

httpまたはhttpsのいずれかです。例ではhttpsを使用します。

また、エンドポイントはHTTPメソッドごとに異なる場合があります。次に例を示します。

GET /item/{id}
PUT /item/{id}

二つの異なるエンドポイントであろう-のための1つのR(「C言語のようetrieving Rの UD」略称)、及びための他のUは pdating(「CRのようにUの D」)

そして、それだけです、本当にとても簡単です!


25
異なるHTTPメソッドが別々のエンドポイントを定義することを言及したことに賛成。
ボヤンクシュレフ2018

3
マシュー20:16
KJV-

2
残念ですが、Stack Exchangeはこの回答を最初または2番目の回答として表示しません。私にとっては、アクションとコントローラのセット全体がエンドポイントと見なされているのか、または単一のコントローラの単一のアクションがエンドポイントを定義しているのかわからなかったので、リストのかなり下にあり、間違いなく最高のリストでした。この答えは、後者であると私に言いました。
ThorkilVærge19年

OPがこの回答を選択しなかったのは残念なので、これが最良の回答です。

1
@Parthエンドポイントは通常、リクエストによって呼び出されることになっているもの、APIコンシューマーへのインターフェースとして提供するもの、つまり使用するように指示するものです。したがって、この例では、実装は2つのエンドポイントを処理します(APIのコンシューマー/ユーザーに何かを呼び出す2つの方法を提供したため)。しかし、私はそれが「一般的に」であり、エンドポイントの呼び出しを少し異なると主張する人がいる場合(たとえば、この例では誰かがこれを1つのエンドポイントであると主張するだろう)、「OK、何でも、これらはただ言葉!お互いを単に理解するだけで十分満足です」
Tomeg

43

これは通信チャネルの一端なので、多くの場合、これはサーバーまたはサービスのURLとして表されます。


35

エンドポイントは、APIとの通信に使用されるURLパターンです。


12

終点OpenID認証用語でのは、認証リクエストの送信先(POST)のURLです。

Google認証APIからの抜粋

Google OpenIDエンドポイントを取得するには、GETまたはHEAD HTTPリクエストをhttps://www.google.com/accounts/o8/idに送信して、検出を実行します。GETを使用する場合は、Acceptヘッダーを "application / xrds + xml"に設定することをお勧めします。Googleは、OpenIDプロバイダーのエンドポイントURLを含むXRDSドキュメントを返します。エンドポイントアドレスは次のように注釈が付けられます。

<Service priority="0">
<Type>http://specs.openid.net/auth/2.0/server</Type> 
<URI>{Google's login endpoint URI}</URI> 
</Service>

Googleエンドポイントを取得したら、適切なパラメーター(リンクされたページで利用可能)を指定して、エンドポイントに認証リクエストを送信できます。エンドポイントに接続するには、URLにリクエストを送信するか、HTTP POSTリクエストを作成します。


7

エンドポイントは、ネットワークを介してアクセスされるサービス、ツール、またはアプリケーションの「接続ポイント」です。ソフトウェアの世界では、実行中で接続を「リッスン」しているすべてのソフトウェアアプリケーションは、エンドポイントを「フロントドア」として使用します。アプリケーション/サービス/ツールに接続して、エンドポイントに接続するデータを交換する場合


4

エンドポイントという用語は、当初WCFサービスで使用されていました。後でこの単語がAPIリソースの同義語として使用されている場合でも、RESTはこれらのURI(HTTP動詞を理解し、RESTアーキテクチャーに従うURI)を「リソース」と呼ぶことをお勧めします。

簡単に言えば、リソースまたはエンドポイントは、リモートでホストされているアプリケーションへのエントリポイントのようなものであり、ユーザーがHTTPプロトコルを介して通信できるようにします。


4

反対票は私には関係ありませんが、出典(:理由は示されていません)。


各エンドポイントは、APIが機能を実行するために必要なリソースにアクセスできる場所です。つまり、APIがリクエストを送信し、リソースが存在する場所をエンドポイントと呼びます。

素敵な情報源から。


2

用語のエンドポイントは、リクエストの作成に重点を置いたURLです。さまざまなポイントから次の例を見てください。

/api/groups/6/workings/1
/api/v2/groups/5/workings/2
/api/workings/3

特定のAPIで同じソースに明確にアクセスできます。


1

短い答え:「エンドポイントは、システムがメッセージを送受信できるメッセージチャネルの終わりをモデル化した抽象概念です」(Ibsen、2010年)。


エンドポイントvs URI(明確化)

エンドポイントはURIと同じではありません。1つの理由は、URIがGETのエンドポイント、POSTのエンドポイントなど、さまざまなエンドポイントにドライブできるためです。例:

@GET /api/agents/{agent_id} //Returns data from the agent identified by *agent_id*
@PUT /api/agents/{agent_id} //Update data of the agent identified by *agent_id*

エンドポイントとリソース(明確化)

エンドポイントはリソースと同じではありません。1つの理由は、異なるエンドポイントが同じリソースをドライブできるためです。例:

@GET /api/agents/{agent_id} @Produces("application/xml") //Returns data in XML format
@GET /api/agents/{agent_id} @Produces("application/json") //Returns data in JSON format

0

簡単に言えば、エンドポイントは通信チャネルの一端です。APIが別のシステムとやり取りする場合、この通信のタッチポイントはエンドポイントと見なされます。APIの場合、エンドポイントにはサーバーまたはサービスのURLを含めることができます。各エンドポイントは、APIが機能を実行するために必要なリソースにアクセスできる場所です。

APIは「リクエスト」と「レスポンス」を使用して機能します。APIがWebアプリケーションまたはWebサーバーに情報を要求すると、応答を受け取ります。APIがリクエストを送信し、リソースが存在する場所をエンドポイントと呼びます。

続きを読む...

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.