Відповіді:
Ресурс - це RESTful підмножина Endpoint .
Кінцева точка сама по собі - це місце, де можна отримати доступ до послуги:
https://www.google.com # Serves HTML
8.8.8.8 # Serves DNS
/services/service.asmx # Serves an ASP.NET Web Service
Ресурс відноситься до одного або більше іменників, обслуговується, представленому в моді простору імен, тому що це легко для людей , щоб зрозуміти:
/api/users/johnny # Look up johnny from a users collection.
/v2/books/1234 # Get book with ID 1234 in API v2 schema.
Все вищезазначене можна вважати кінцевими точками сервісу, але тільки нижня група вважатиметься ресурсами, НАЙКРАСНО кажучи. Топ-група не є виразною щодо вмісту, який вона надає.
Запит REST - це як речення, що складається з іменників (ресурсів) та дієслів (методи HTTP):
GET
(метод) ім'я користувача johnny
(ресурс).DELETE
(метод) книги з id 1234
(ресурс).Кінцева точка зазвичай стосується послуги, але ресурс може означати багато речей. Ось кілька прикладів ресурсу, які залежать від контексту, в якому вони використовуються.
Щось, що може вам допомогти:
Бібліотека була цінним ресурсом, і він часто використовував її.
Ресурси - це природні речовини, такі як вода та деревина, які є цінними для підтримки життя:
[pl] Земля має обмежені ресурси, і якщо ми не переробляємо їх, ми використовуємо їх.
Ресурси - це також цінні речі, такі як гроші або майно, якими ви можете скористатися, коли вам знадобляться:
[pl] Уряду немає ресурсів, щоб найняти кількість необхідних вчителів.
Термін ресурс за визначенням має багато нюансів. Все залежить від контексту, в якому він використовується.
Терміни ресурс і кінцева точка часто використовуються синонімічно. Але насправді вони не означають одне і те ж.
Термін кінцева точка орієнтований на URL-адресу, яка використовується для подання запиту.
Термін ресурс орієнтований на набір даних, який повертається запитом.
Тепер до одного і того ж ресурсу часто можна отримати декілька різних кінцевих точок .
Також одна і та сама кінцева точка може повертати різні ресурси , залежно від рядка запиту.
Давайте подивимось кілька прикладів:
Подивіться наступні приклади різних кінцевих точок :
/api/companies/5/employees/3
/api/v2/companies/5/employees/3
/api/employees/3
Вони, очевидно, могли отримати доступ до того самого ресурсу в заданому API.
Також існуючий API можна повністю змінити. Це може призвести до появи нових кінцевих точок, які отримають доступ до тих самих старих ресурсів, використовуючи абсолютно нові та різні URL-адреси:
/api/employees/3
/new_api/staff/3
Якщо ваша кінцева точка повертає колекцію, ви можете здійснити пошук / фільтрування / сортування за допомогою рядків запитів. Як результат, наступні URL-адреси використовують одну і ту ж кінцеву точку ( /api/companies
), але вони можуть повертати різні ресурси (або колекції ресурсів , які за визначенням є самими ресурсами):
/api/companies
/api/companies?sort=name_asc
/api/companies?location=germany
/api/companies?search=siemens
Можливо, моя не є чудовою відповіддю, але ось що.
Оскільки більше працюю з справжніми RESTful веб-сервісами через HTTP, я намагався відхилити людей від використання терміна кінцевої точки, оскільки він не має чіткого визначення, а замість цього використовував мову REST, що є ресурсами та ресурсами.
На мій погляд, кінцева точка - це термін TCP. Він пов'язаний з HTTP, оскільки частина URL-адреси ідентифікує сервер прослуховування.
Таким чином, ресурс не є новим терміном, я не думаю, я думаю, що кінцева точка завжди була присвоєна, і ми розуміємо це, оскільки ми обертаємось навколо REST як стиль API.
Редагувати
Я про це блогував.
https://medium.com/@lukepuplett/stop-saying-endpoints-92c19e33e819
Згідно https://apiblueprint.org/documentation/examples/13-named-endpoints.html це ресурс "загальне" місце зберігання даної сутності - наприклад, / замовники / 30654 / замовлення, тоді як кінцева точка - конкретна дія (Метод HTTP) над заданим ресурсом. Таким чином, один ресурс може мати кілька кінцевих точок.
Розглянемо сервер, який містить інформацію про користувачів, місії та їх бали.
Джерело: Кінцеві точки API проти ресурсів
1. Опис ресурсу "Ресурси" позначає інформацію, повернуту API.
2. Кінцеві точки та методи Кінцеві точки вказують, як ви отримуєте доступ до ресурсу, тоді як метод вказує дозволені взаємодії (наприклад, GET, POST або DELETE) з ресурсом.
Додаткова інформація: 3. Параметри Параметри - це параметри, які ви можете передати разом із кінцевою точкою (наприклад, вказавши формат відповіді або повернуту суму) для впливу на відповідь.
4. Приклад запиту Приклад запиту включає зразок запиту з використанням кінцевої точки, показуючи деякі налаштовані параметри.
5. Приклад та схема відповіді Приклад відповіді показує зразок відповіді з прикладу запиту; схема відповіді визначає всі можливі елементи у відповіді.
Джерело- Довідкове посилання