
Projektowanie API REST
Zasady REST, wersjonowanie, paginacja, filtrowanie, HATEOAS, kody statusu, OpenAPI/Swagger
1Jaka jest fundamentalna zasada REST?
Jaka jest fundamentalna zasada REST?
Odpowiedź
REST opiera się na zasadzie reprezentowania zasobów dostępnych poprzez unikalne URI. Każdy zasób (użytkownik, produkt, zamówienie) ma URI i może być manipulowany za pomocą standardowych czasowników HTTP (GET, POST, PUT, DELETE). Ten paradygmat zorientowany na zasoby umożliwia skalowalną i luźno powiązaną architekturę, w której serwer nie przechowuje stanu sesji klienta.
2Której metody HTTP użyć do idempotentnej pełnej aktualizacji zasobu?
Której metody HTTP użyć do idempotentnej pełnej aktualizacji zasobu?
Odpowiedź
PUT jest idempotentny i całkowicie zastępuje zasób. Wielokrotne wywołanie PUT z tymi samymi danymi daje ten sam wynik co pojedyncze wywołanie. Z kolei POST nie jest idempotentny (utworzyłby wiele zasobów), PATCH wykonuje częściowe aktualizacje, a DELETE usuwa zasób. Idempotentność PUT gwarantuje bezpieczeństwo ponawiania prób w przypadku błędów sieci.
3Jaki kod HTTP zwrócić po pomyślnym utworzeniu nowego zasobu?
Jaki kod HTTP zwrócić po pomyślnym utworzeniu nowego zasobu?
Odpowiedź
Kod 201 Created wskazuje, że zasób został pomyślnie utworzony. Towarzyszy mu nagłówek Location wskazujący na URI nowego zasobu. Kod 200 OK jest zbyt ogólny dla tworzenia, 204 No Content jest używany, gdy nie ma treści odpowiedzi, a 202 Accepted sygnalizuje przetwarzanie asynchroniczne, które jeszcze się nie zakończyło.
Jaka istotna różnica odróżnia API REST od API RPC?
Co oznacza zasada statelessness w REST?
+17 pytań z rozmów
Inne tematy rekrutacyjne Go
Podstawy Go
Struktury danych w Go
Interfejsy w Go
Obsługa błędów
Podstawy goroutines
Channels
Go Modules
Serwer HTTP
Klient HTTP
Kodowanie JSON
Database/SQL
Pakiet context
Testing
Wzorce współbieżności
Prymitywy synchronizacji
Frameworki webowe Go
gRPC
Reflection
Zarządzanie pamięcią
Optymalizacja wydajności
Generics
Go Design Patterns
Microservices
Bezpieczeństwo i uwierzytelnianie
Docker & Containerization
Kubernetes Basics
Zaawansowany Go
Tworzenie CLI
Opanuj Go na następną rozmowę
Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.
Zacznij za darmo