jestem projektowania (as-relaksującego-jak-to możliwe) API i chcieliby wiedzieć, w jaki sposób najlepiej rozwiązać następujący:REST API Projekt: GET wymaga parametrów wrażliwych, które nie powinny być przechowywane w logach serwerów internetowych
- Załóżmy, jesteśmy projektowaniu końcowy TLS pobrać jakiś zasób:
GET /objects/{id}
- nie chcemy obiekt
{id}s
być przechowywane w naszych dziennikach serwerów wWW, więc chcemy uniknąć za pomocą kwerendy lub URI params; co pozostawia nam parametry w treści żądania. (zakładamy, że dane są takie, że identyfikator jest wrażliwy i nie mamy dostępu do innego niewrażliwego identyfikatora). Rozumiem, że jest zalecane, aby nie mieć parametrów w treści żądania GET. HTTP GET with request body - Rozumiem, że użycie POST do uzyskania danych jest również zalecane, ponieważ prowadzi bardziej do stylu projektowania RPC i może generalnie być mylące.
W jaki sposób (należy) zaprojektować punkt końcowy API GET
, aby uniknąć używania parametrów zapytania lub identyfikatora URI, które mogą być rejestrowane?
Czy można stosować test POST w tym scenariuszu lub czy istnieje inny kreatywny sposób?
(Uwaga: ten interfejs API NIE zostanie wystawiony na osoby trzecie)
Tak, masz jednak rację, teraz muszę być bardziej konkretny. Chciałbym rozwiązać ten problem z perspektywy projektowania interfejsu API, zamiast tworzyć zależność od zespołu operacyjnego, aby pamiętać, aby NIE używać wartości CustomLog, która rejestrowałaby wartości wrażliwe. –