Try it out

Wykonaj prawdziwe żądanie z przeglądarki, prosto ze strony endpointu, z obsługą uwierzytelniania i proxy w ramach tego samego origin, aby uniknąć CORS.

Użycie

Panel żądania każdego endpointu ma przełącznik trybu Code / Try it out obok zakładek języków. Try it out to edytowalny formularz (URL bazowy, parametry ścieżki/zapytania/nagłówka, body żądania), który wykonuje prawdziwe żądanie przez executeRequest() i pokazuje wynik w zakładce Live obok zadeklarowanych przykładowych odpowiedzi (sformatowane, gdy body to JSON, z przyjaznym komunikatem zamiast surowego błędu przy awarii sieci/CORS). URL bazowy domyślnie przyjmuje pierwszy wpis z tablicy servers[] dokumentu OpenAPI, jeśli jest obecna, i zawsze można go swobodnie edytować.

Uwierzytelnianie

Endpointy z wymaganiem security otrzymują wbudowany formularz uwierzytelniania, jedno pole na każdy zadeklarowany schemat:

  • apiKey: trafia do nagłówka albo parametru zapytania, zależnie od zadeklarowanej lokalizacji.
  • http bearer / OAuth2 / OpenID Connect: wszystkie akceptują token, który wklejasz bezpośrednio; żaden przepływ OAuth nie jest wykonywany.
  • http basic: oczekuje user:pass.

Dane uwierzytelniające są globalne (współdzielone między każdym endpointem używającym tego schematu, tak jak działałby prawdziwy token deweloperski) i zapisywane do localStorage, więc przetrwają przeładowanie.

Gdy udana odpowiedź Live zawiera pole w kształcie tokenu (np. access_token endpointu logowania, także zagnieżdżone w kopercie jak data.access_token), przycisk „Use as … token” pozwala go ponownie użyć jako danych uwierzytelniających do reszty sesji, bez ręcznego kopiowania i wklejania.

Proxy w ramach tego samego origin

Domyślnie Try it out to bezpośredni fetch() z przeglądarki do docelowego API, podlegający jego własnej polityce CORS. Gdy DocfyUiModule.setup() nestjs-docfy (zobacz API reference) jest skonfigurowany z dokumentem OpenAPI, docfy-ui wykrywa wstrzyknięty globalny obiekt window.__DOCFY_PROXY_PATH__ i kieruje żądanie zamiast tego przez serwerowe proxy w ramach tego samego origin, więc CORS nigdy się nie stosuje.

Lista dozwolonych adresów proxy jest budowana wyłącznie z bezwzględnych URL-i w tablicy servers[] dokumentu. Nie ma niejawnego fallbacku „ten sam origin co to żądanie”, bo zależałoby to od nagłówków kontrolowanych przez klienta. Żądanie do niedozwolonego origin, albo dowolna inna awaria samego proxy, wraca z nagłówkiem odpowiedzi X-Docfy-Proxy-Error, dzięki czemu docfy-ui potrafi odróżnić awarię na poziomie proxy od prawdziwej odpowiedzi Twojego API.