Q1. Який тип відносин визначається як такий, що один ресурс існує лише за умови існування іншого батьківського ресурсу — наприклад, сторінки в книзі?
-
Частковий
(Partial) -
залежний
(dependent) -
асоціативний
(associative) -
пов'язаний
(linked)
Q2. Який шаблон URL рекомендується використовувати при роботі з одним ресурсом і колекцією ресурсів?
-
/companies/{id} і /company
-
/company/{id} і /companies
-
/companies/{id} і /companies
-
/company/{id} і /company
-
дані в токені
-
Власність
-
дозвіл
-
ціле число
Q4. Яке обмеження REST вказує, що знання та розуміння, отримані від одного компонента API, повинні бути загалом застосовні в інших частинах API?
-
Єдиний інтерфейс
-
Клієнт-Сервер
-
Безстанова
-
Кешована
-
HTTP
-
REST
-
OPTIONS
-
CORS
-
сповіщення інших систем про подію
-
швидшого виявлення помилок
-
покращення журналювання помилок
-
журналювання додаткових даних
-
додавати нові технології до інфраструктури організації.
-
ділитися функціями та можливостями з іншими системами.
-
переносити інфраструктуру в хмару.
-
задовольняти останні вимоги цифрової трансформації.
-
bash
-
curl
-
ssh
-
powerShell
-
OpenAPI (Swagger)
-
WADL
-
WSDL
-
OAuth
-
SUBMIT
-
WRITE
-
POST
-
CREATE
-
Мобільні додатки працюють краще.
-
Це покращує доступність.
-
Це забезпечує кращу безпеку.
-
Це зменшує навантаження на сервери.
Q12. API ресурсу не дозволяє видалення, але клієнтська програма спробувала видалити ресурс. Який код відповіді HTTP слід повернути?
-
409 Conflict
-
400 Bad Request
-
406 Not Acceptable
-
405 Method Not Allowed
-
шар ідентифікації поверх OAuth 2.0
-
нова назва для SAML 3.0
-
сучасна заміна API-ключів
-
конкурент SSO для OAuth 2.0
-
гнучкі запити/відповіді
-
стабільніші API
-
сумісність з більшою кількістю шлюзів
-
безпечніший за замовчуванням
-
Безстанова
-
Клієнт-Сервер
-
Єдиний інтерфейс
-
Кешована
-
Ідентифікує ID користувача.
-
Ідентифікує клієнтський застосунок або SDK.
-
Вказує, чи API має очікувати автентифікацію користувача.
-
Вказує, чи API має приймати трафік мікросервісів.
Q17. Якщо додати версіонування за допомогою заголовків Accept і Content-Type, який правильний формат значення заголовка?
-
application/json
-
application/json_version2
-
text/html
-
application/vnd.myapp.v2+json
-
Токен зашифрований.
-
Токен закодований.
-
Токен обмежений для конкретного випадку використання.
-
Токен можна передавати між системами.
How to easily secure your APIs with API keys and OAuth
Q19. Можливість виконувати один і той самий запит API знову і знову без зміни стану ресурсу є прикладом _.
-
безстанової архітектури
-
ідемпотентності
-
єдиного інтерфейсу
-
кешованості
Q20. Який компонент можна використовувати для обгортання застарілих архітектур або протоколів у REST-інтерфейс для полегшення споживання та інтеграції?
-
API-проксі
-
API-шлюз
-
OpenAPI
-
OAuth-сервер авторизації
-
транспортування через SSL
-
зашифрований вміст
-
підпис
-
закодований вміст
-
token
-
scope
-
claim
-
back channel
-
ID token
-
refresh token
-
access token
-
auth code token
Q24. Що слід додати до заголовка відповіді Cache-Control, щоб вказати, що відповідь не повинна зберігатися в проміжному кеші?
-
no-proxy
-
client-only
-
restricted
-
private
-
Authorization Code Grant
-
Client Credentials Grant
-
Implicit Grant
-
Authentication Grant
-
Це залежить від API.
-
admin
-
write
-
read-write
-
_embedded
-
resources
-
subresources
-
_links
-
відстеження завантажень
-
заголовки Accept
-
user agents
-
опитування користувачів
Q29. Яке обмеження REST дозволяє наявність кешування, маршрутизації та інших систем між клієнтом і сервером?
-
Шарова система
-
Безстанова
-
Клієнт-Сервер
-
Кешована
-
стек технологій
-
обґрунтування схеми іменування
-
місія
-
приклад коду
-
Час відповіді
-
Час до першого Hello World
-
TTL
-
Час безвідмовної роботи
-
GET /user/{id}
-
GET /users/{id}
-
GET /user?id={id}
-
GET /users?id={id}
-
описувати відносини між ресурсами або діями
-
описувати підресурси, пов'язані з поточним
-
зв'язувати два ресурси
-
описувати ресурс і його призначення
- Java, Javascript і .NET
- які ви можете підтримувати
- PHP, Python і Go
- мови, які використовують цільові користувачі
-
resources
-
_embedded
-
subresources
-
_links
- фреймворк авторизації для надання делегованого доступу
- підхід до єдиного входу для API
- метод автентифікації API
- HTTP Basic Authentication 2.0
- JSON
- HTTP
- поширені випадки використання
- стек технологій
- ділитися інформацією профілю користувача
- оновлювати конфігурацію API
- підтримувати активність веб-сесії
- отримувати access-токен
- скільки часу потрібно розробнику, щоб зробити щось з вашим API
- скільки часу потрібно, щоб почати нову мову програмування
- скільки часу потрібно для встановлення вашого SDK
- скільки часу потрібно для прочитання вашої документації
Q40. Який заголовок відповіді повідомляє клієнту та проміжним системам, що відповідь не слід кешувати ніде?
- Cache-State: none
- Expires:-1
- Cache-Control: no-cache
- Cache-Control: no-store
Q41. Який компонент приховує відмінності або межі між різними мікросервісами від кінцевих клієнтських застосунків?
-
API-шлюз
-
API-журналювання
-
шарова система
-
API-проксі
-
загальновідомих знань
-
URL
-
відсутності версіонування
-
заголовка Accept
-
параметр URL
-
заголовок Authorization
-
Base64-кодування
-
Basic Auth
-
клієнт
-
не вказано
-
сервер авторизації
-
сервер ресурсів
-
вхідний трафік
-
північ-південь трафік
-
внутрішній трафік
-
схід-захід трафік
-
Додати .json до URL.
-
API не використовують XML.
-
Використовувати заголовок Content-Type.
-
Використовувати заголовок Accept.
Q47. Коли користувач намагається отримати доступ до запису, який йому не належить, який код відповіді HTTP є найбільш відповідним?
-
403
-
404
-
401
-
405
-
HTTP-дієслова
-
JSON-навантаження
-
HTTP-коди відповіді
-
обмеження швидкості/дроселювання
-
red team тестування
-
white box тестування
-
blue box тестування
-
black box тестування
-
PUT
-
POST
-
GET
-
OPTIONS
-
Expires: 1 minute
-
Cache-Control: max-age=60
-
Expires: 1 January 2020
-
Cache-Expires: max-age=60
-
гіпермедіа
(hypermedia) -
відношення посилань
(link relations) -
парсинг
(parsing) -
перегляд
(browsing)
-
405
-
201
-
204
-
202
- AWS Lambda
- завантаження програмного забезпечення з відкритим кодом
- Serverless
- JavaScript на вебсторінці
Q55. Який шаблон URL слід використовувати для доступу до підресурсу, прикріпленого до конкретного ресурсу?
- /companies/employees/{companyId}/{employeeId}
- /company/{companyId}/employees/{employeeId}
- /companies/{companyId}/employees/{employeeId}
- /companies/{companyId}/employee/{employeeId}
- Безстанова (Stateless)
- Кешована (Cacheable)
- Шарова система (Layered System)
- Єдиний інтерфейс (Uniform Interface)
- FLUSH
- DELETE
- CLEAR
- DESTROY
- DELETE
- GET
- PUT
- POST
Q59. Яке обмеження REST вказує, що кожен запит має бути самодостатнім і не мати певного обов'язкового порядку?
- Єдиний інтерфейс ( Uniform Interface)
- Кешована (Cacheable)
- Безстанова (Stateless)
- Клієнт-Сервер (Client-Server)
REST Architectural Constraints
- Перевірити структуру JSON.
- Сповільнити запити.
- Перевірити статус доступності API.
- Перевірити API-ключ.
- фільтрація за датою
- курсори наступний/попередній
- розмір сторінки та фільтри
- ID бази даних
- OAuth
- біометрія
- API-ключі
- ім'я користувача та пароль
Q63. Який код відповіді HTTP зазвичай означає, що запитана робота все ще обробляється і може завершитися помилкою пізніше?
- 200 OK
- 204 No Content
- 201 Created
- 202 Accepted
A. Термін дії (exp) не минув.
B. Алгоритм є достатнім.
C. Підпис відповідає навантаженню.
D. Токен був закодований у Base64.
E. Видавець (iss) є очікуваним сервером авторизації.
F. Є refresh-токен.
G. Ідентифікатор клієнта (cid) є очікуваним клієнтом.
H. Токен був зашифрований.
- A,B,E,H
- B,C,F,G
- A,D,G,H
- A,C,E,G
-
схід-захід трафік
(east-west traffic) -
вхідний трафік
(inbound traffic) -
північ-південь трафік
(north-south traffic) -
зовнішній трафік
(external traffic)
North-South vs East-West Traffic
- Authorization Code з PKCE
- Client Credentials
- Device
- Resource Owner Password
OAuth 2.0 for Native and Mobile Apps
-
YY-M-D hh:mm:ss+TZ
-
YY-M-D h:mm:ss
-
YYYY-MM-DDThh:mm:ssZ
-
YYYY-M-D hh:mm:ss
The 5 laws of API dates and times
- Rate-Limit
- Expires
- Etag
- Cache-Control
Cache-Control Expires Etag Rate limiting your RESTful API
Q69. Клієнтська програма використовує фільтр або пошук у API правильно, але результатів немає. Який найкращий код відповіді?
- 204 No Content
- 400 Bad Request
- 200 OK
- 404 Not Found
-
RETRIEVE
-
FORM
-
GET
-
READ
-
200
-
405
-
201
-
204
Q72. Ви розробляєте RESTful API для нового проекту на GitHub. Безпека є головним пріоритетом, і ви хочете переконатися, що лише авторизовані користувачі можуть отримати доступ до певних кінцевих точок. Який з наступних механізмів слід використовувати для досягнення цієї мети?
- Обмеження швидкості API
- OAuth 2.0
- Basic Authentication
- HTTP Basic Auth