Komponowanie i odtwarzanie (Kompozytor)
Przechwytywanie to nie tylko „patrzenie“. Kompozytor żądań Trace Eagle łączy „prawdziwe przechwycone żądanie“ i „ręczne budowanie oraz debugowanie“ w jednym miejscu: dowolne przechwycone żądanie można wysłać ponownie bez zmian, albo wysłać ponownie po dostrojeniu parametrów; można też zbudować żądanie od zera i wysłać je. Koniec z przeskakiwaniem tam i z powrotem między narzędziem do przechwytywania a osobnym narzędziem do debugowania API.
1. Dwa punkty wejścia
Dział zatytułowany „1. Dwa punkty wejścia”- Wyślij ponownie / edytuj i odtwórz: kliknij prawym przyciskiem na liście ruchu albo kliknij „Edytuj i wyślij ponownie“ w panelu szczegółów, aby wczytać to przechwycone żądanie do kompozytora bez zmian. Adres jest odtwarzany z protokołu / hosta / portu z chwili przechwycenia, nieistotne nagłówki połączenia są usuwane, a treść i jej typ są wykrywane z zawartości, wszystko automatycznie. Dostrój kilka parametrów i wyślij ponownie.
- Zbuduj od zera: złóż nowe żądanie ręcznie wprost w kompozytorze.
Oba punkty wejścia korzystają z tego samego kanału wysyłki, a wyniki są zapisywane w osobnej zakładce sesji Kompozytora (zachowując pełną historię), gdzie, tak jak przechwycone żądanie, można je obejrzeć, ponownie edytować i porównać.
2. Zbuduj żądanie ręcznie
Dział zatytułowany „2. Zbuduj żądanie ręcznie”- Linia żądania: metoda (GET / POST / PUT / DELETE / PATCH / HEAD / OPTIONS) + URL.
- Tabela parametrów: parametry zapytania są zarządzane wiersz po wierszu w tabeli, trzymane osobno od URL-a i składane dopiero w chwili wysyłki, co oznacza, że dynamiczne symbole wewnątrz nie są psute przez przedwczesne kodowanie.
- Tabela nagłówków: dodawaj, usuwaj albo edytuj dowolny nagłówek wiersz po wierszu.
- Pomocnik uwierzytelniania: None / Bearer Token / Basic (nazwa użytkownika + hasło, base64 automatycznie); działa tylko wtedy, gdy sam nie wpisałeś nagłówka Authorization.
- Treść: brak / JSON / formularz (form-urlencoded) / surowy tekst; wybór JSON albo formularza automatycznie dodaje pasujący Content-Type.
3. Wartości dynamiczne: obsłuż podpisane / szyfrowane prywatne API
Dział zatytułowany „3. Wartości dynamiczne: obsłuż podpisane / szyfrowane prywatne API”Dowolne pole może zawierać wartości dynamiczne ${...}, obliczane przez silnik przed wysłaniem. To ratunek przy debugowaniu prywatnych API niosących podpis / znacznik czasu / nonce:
| Wartość dynamiczna | Przeznaczenie |
|---|---|
${uuid} / ${randomUUID} |
Losowy UUID |
${timestamp} |
Znacznik czasu Unix w sekundach |
${timestampMs} / ${now} |
Znacznik czasu Unix w milisekundach |
${random} |
16-cyfrowy losowy hex |
${randomInt:min,max} |
Losowa liczba całkowita z zakresu |
${base64:} / ${base64url:} / ${base64decode:} |
Kodowanie / dekodowanie Base64 |
${md5:} / ${sha1:} / ${sha256:} |
Skrót |
${hmacSha256:key,msg} / ${hmacSha256Base64:key,msg} / ${hmacSha1:key,msg} |
Podpis HMAC |
${urlEncode:} / ${upper:} / ${lower:} |
Kodowanie URL / zmiana wielkości liter |
- Obsługa zagnieżdżania: na przykład
${hmacSha256:${secret},${body}}, najpierw rozwiąż zmienną, potem oblicz podpis. - Wszystko, czego nie da się rozwiązać, jest zachowywane bez zmian, dzięki czemu na pierwszy rzut oka dostrzeżesz, która zmienna nie została obliczona, podczas gdy zwykłe narzędzia często zgłaszają błąd albo wysyłają pustą wartość, gdy napotkają niezdefiniowaną zmienną.

4. Środowiska i kolekcje
Dział zatytułowany „4. Środowiska i kolekcje”- Zmienne środowiskowe: wyodrębnij
${name}do zmiennych środowiskowych i przełączaj między wieloma środowiskami (takimi jak „dev / test / prod“) jednym kliknięciem; zmienne mogą odwoływać się do siebie nawzajem i rozwijać łańcuchowo. - Kolekcje: grupuj często używane żądania w nazwanych folderach, zapisz bieżące żądanie w dowolnej chwili i wczytaj je z powrotem do ponownego użycia, kiedy chcesz.
- Automatyczny zapis przestrzeni roboczej: kolekcje + środowiska są automatycznie zapisywane jako czysty tekst, wersjonowalny plik, który można porównywać i recenzować, co ułatwia dzielenie się w zespole i śledzenie historii.
5. Import i generowanie kodu
Dział zatytułowany „5. Import i generowanie kodu”- Import cURL: wklej polecenie cURL, aby przetworzyć je na edytowalne żądanie (obsługuje popularne parametry, takie jak
-X / -H / -d / --data-* / -u / -b / -A / -e, w tym obsługę cudzysłowów, i automatycznie traktuje je jako POST, gdy jest treść). - Import pliku kolekcji: importuj zewnętrzne pliki kolekcji API (na pierwszym planie jest surowa treść; grupy są spłaszczane do pojedynczej kolekcji).
- Generowanie kodu: wyeksportuj bieżące żądanie do fragmentu kodu cURL / Python / JavaScript(fetch) / Go / OkHttp jednym kliknięciem, przydatne do pisania skryptów, dodawania do projektu albo dzielenia się ze współpracownikiem.
6. Wierna wysyłka: utrzymaj odtworzenie blisko prawdziwej ścieżki
Dział zatytułowany „6. Wierna wysyłka: utrzymaj odtworzenie blisko prawdziwej ścieżki”Wartość odtwarzania leży w „odtworzonym żądaniu pasującym do prawdziwego środowiska“. W ustawieniach kompozytora wysyłka może zachować te same charakterystyki sieciowe co sesja przechwytywania, dzięki czemu wyniki są bardziej wiarygodne:
- Nadrzędne proxy: wysyłaj przez nadrzędne proxy (http / socks5), kierując odtworzone żądanie do firmowego proxy, hosta pośredniczącego albo innego dodatkowego proxy.
- Wierność charakterystyk żądania (profil przeglądarki): przywróć charakterystyki sieciowe odtwarzanego żądania do takich, jak u standardowego klienta (na przykład popularnej przeglądarki), utrzymując odtworzone żądanie w zgodzie z prawdziwą ścieżką.
- Własny DNS: określ, który DNS rozwiązuje domenę, aby uniknąć zatrucia albo wybrać wyznaczoną trasę.
Przed wysłaniem wszystkie wartości dynamiczne ${...} są najpierw obliczane lokalnie, więc zawsze widzisz dokładnie, co faktycznie zostanie wysłane. Każda wysyłka przechodzi przez osobną sesję Kompozytora, odizolowaną od sesji przechwytywania; wyniki pokazują w wierszu kod statusu, protokół i czas trwania i są zapisywane jako Flow w sesji, więc, tak jak przechwycone żądanie, można je ponownie obejrzeć, ponownie edytować i porównać.
7. Połącz z porównywaniem żądań (Diff)
Dział zatytułowany „7. Połącz z porównywaniem żądań (Diff)”Skomponowane / odtworzone żądanie można porównać wiersz po wierszu, obok siebie z prawdziwym przechwyconym żądaniem z historii, szybko wskazując „co dokładnie różni się tym razem od poprzedniego dla tego samego punktu końcowego“, co jest szczególnie skuteczne przy rozwiązywaniu różnic w podpisach, parametrach i odpowiedziach. Zobacz Porównywanie żądań.
Powrót do Przechwytywanie przez proxy · Powiązane: Reguły przepisywania i punkty przerwania · Porównywanie żądań