web-dev-qa-db-fra.com

Quelle est la difference entre resource et endpoint?

J'ai entendu à la fois "ressource" et "point final" se référer à la même chose. Il semble que cette ressource soit un terme plus récent.

Quelle est la différence entre eux? Est-ce que "ressource" implique une conception RESTful?

111
B Seven

REST

La ressource est un sous-ensemble RESTful de noeud final .

Un endpoint ​​à lui seul est l'emplacement où un service peut être consulté:

https://www.google.com    # Serves HTML
8.8.8.8                   # Serves DNS
/services/service.asmx    # Serves an ASP.NET Web Service

A ressource fait référence à un ou plusieurs noms servis, représentés par des espaces de noms, car il est facile à comprendre pour les humains:

/api/users/johnny         # Look up johnny from a users collection.
/v2/books/1234            # Get book with ID 1234 in API v2 schema.

Tous les éléments ci-dessus peuvent être considérés comme des points d'extrémité de service, mais seul le groupe du bas sera considéré comme une ressource, en termes REST. Le groupe supérieur n'est pas expressif quant au contenu qu'il fournit.

Une requête REST ressemble à une phrase composée de noms (ressources) et verbes (méthodes HTTP):

  • GET (méthode) l'utilisateur nommé johnny (ressource).
  • DELETE (méthode) le livre avec l'ID 1234 (ressource).

Non-repos

Le point de terminaison fait généralement référence à un service, mais ressource peut vouloir dire beaucoup de choses. Voici quelques exemples de ressources dépendant du contexte dans lequel elles sont utilisées.

URL: localisateur "ressources" uniforme

  • Pourrait être RESTful, mais souvent ne est pas. Dans ce cas, le point final est presque synonyme.

La gestion des ressources

Dictionnaire

  • Les définitions fournissent de nombreuses autres utilisations de la Parole.

Quelque chose qui peut être utilisé pour vous aider:

La bibliothèque était une ressource précieuse, et il s'en est souvent servi.

Les ressources sont des substances naturelles, telles que l’eau et le bois, qui sont essentielles à la vie:

[pl] La terre a des ressources limitées et si nous ne les recyclons pas, nous les utilisons.

Les ressources sont également des objets de valeur tels que de l'argent ou des biens que vous pouvez utiliser quand vous en avez besoin:

[pl] Le gouvernement ne dispose pas des ressources nécessaires pour recruter le nombre d’enseignants nécessaire.


Le moral

Le terme ressource est par définition très nuancé. Tout dépend du context ​​son utilisé dans.

75
cchamberlain

Les termes ressource et extrémité sont souvent utilisés comme synonymes. Mais en réalité, ils ne signifient pas la même chose.

Le terme endpoint se concentre sur le URL utilisé pour effectuer une demande.
Le terme ressource se concentre sur le fichier renvoyé par une requête.

Maintenant, la même ressource est souvent accessible via plusieurs points de terminaison différents .
Le même point final peut également renvoyer différentes ressources , en fonction d'une chaîne de requête.

Voyons quelques exemples:

Différents points finaux accédant à la même ressource

Jetez un coup d’œil aux exemples suivants de différents points de terminaison :

/api/companies/5/employees/3
/api/v2/companies/5/employees/3
/api/employees/3

Ils pouvaient évidemment tous accéder à la même même ressource dans une API donnée.

De plus, une API existante pourrait être complètement modifiée. Cela pourrait conduire à de nouveaux points de terminaison qui accéderaient aux mêmes anciennes ressources en utilisant des URL totalement nouvelles et différentes:

/api/employees/3
/new_api/staff/3

Un point d'extrémité accédant à différentes ressources

Si votre point de terminaison renvoie une collection, vous pouvez implémenter la recherche/filtrage/tri à l'aide de chaînes de requête. En conséquence, les URL suivantes utilisent toutes le même point de terminaison (/api/companies), mais elles peuvent renvoyer . différentes ressources (ou des collections de ressources , qui, par définition, sont des ressources en elles-mêmes):

/api/companies
/api/companies?sort=name_asc
/api/companies?location=germany
/api/companies?search=siemens
70
Jpsy

Peut-être que la mienne n'est pas une bonne réponse, mais voilà.

Depuis que je travaille davantage avec des services Web véritablement RESTful sur HTTP, j’essaie d’éviter que les utilisateurs n’utilisent le terme point de terminaison car il n’a pas de définition claire et utilise plutôt le langage REST, ressources et emplacements de ressources. .

Selon moi, le point final est un terme TCP. Il est confondu avec HTTP car une partie de l'URL identifie un serveur d'écoute.

Ainsi, le terme "ressource" n’est pas un terme plus récent, je ne pense pas; je pense que le point de terminaison a toujours été détourné et nous nous rendons compte que lorsque nous discernons REST en tant que style de l’API.

Modifier

J'ai blogué à ce sujet.

https://medium.com/@lukepuplett/stop-saying-endpoints-92c19e33e819

4
Luke Puplett

Selon https://apiblueprint.org/documentation/examples/13-named-endpoints.html est une ressource a " général "lieu de stockage de l'entité donnée - par exemple/customers/30654/orders, alors qu'un extrémité est l'action concrète (méthode HTTP) sur la ressource donnée. Ainsi, une ressource peut avoir plusieurs terminaux.

1
Dafka

1. Description de la ressource "Ressources" fait référence aux informations renvoyées par une API.

2. Noeuds finaux et méthodes Les noeuds finaux indiquent comment vous accédez à la ressource, tandis que la méthode indique les interactions autorisées (telles que GET, POST ou DELETE) avec la ressource.

Informations supplémentaires: 3. Paramètres Les paramètres sont des options que vous pouvez définir avec le noeud final (telles que la spécification du format de la réponse ou la quantité renvoyée) pour influencer la réponse.

4. Exemple de demande L'exemple de demande inclut un exemple de demande utilisant le noeud final, indiquant certains paramètres configurés.

5. Exemple de réponse et schéma L'exemple de réponse montre un exemple de réponse tiré de l'exemple de demande; le schéma de réponse définit tous les éléments possibles de la réponse.

Source- lien de référence

0
Manthan_Admane