Wyszukiwanie
Wyszukiwanie odpytuje przechwycony ruch HTTP w bieżącym projekcie, w tym rekordy wykraczające poza aktualnie wczytane wiersze Historii HTTP.
Otwieranie wyszukiwania
Kliknij Wyszukiwanie w lewym panelu nawigacji. Wprowadź kryteria strukturalne lub wyrażenie HTTPQL albo oba, a następnie kliknij Szukaj lub naciśnij Enter. Wpisywanie zmienia kryteria bez wykonywania nowego wyszukiwania. Używaj stronicowania, aby przeglądać dalsze wyniki.
Składnia HTTPQL
HTTPQL to strukturalny język zapytań dla ruchu HTTP. Dopasowuje pola żądań i odpowiedzi za pomocą operatorów właściwych dla ich typów.
Pola
| Pole | Dopasowywana wartość |
|---|---|
req.host | Nazwa hosta żądania. |
req.path | Ścieżka żądania. |
req.method | Metoda HTTP (GET, POST itd.). |
req.body | Zawartość treści żądania. |
resp.code | Kod statusu odpowiedzi (liczba całkowita). |
resp.len | Długość treści odpowiedzi w bajtach (liczba całkowita). |
resp.body | Zawartość treści odpowiedzi. |
resp.header["Name"].value | Wartość nazwanego nagłówka odpowiedzi. |
req.header["Name"].value | Wartość nazwanego nagłówka żądania. |
req.has_finding | Prawda, gdy do żądania jest dołączone co najmniej jedno ustalenie. |
req.tag | Ciąg tagu przypisanego do żądania. |
Operatory
| Operator | Typ danych | Znaczenie |
|---|---|---|
eq | ciąg, liczba całkowita | Dokładne dopasowanie. |
ne | ciąg, liczba całkowita | Nierówne. |
cont | ciąg | Zawiera podciąg. |
ncont | ciąg | Nie zawiera podciągu. |
regex | ciąg | Pasuje do wyrażenia regularnego. |
gt | liczba całkowita | Większe niż. |
gte | liczba całkowita | Większe lub równe. |
lt | liczba całkowita | Mniejsze niż. |
lte | liczba całkowita | Mniejsze lub równe. |
exists | nagłówki | Nagłówek jest obecny. |
Łączenie wyrażeń
Używaj AND i OR do łączenia warunków. Nawiasy kontrolują kolejność obliczania. Używaj operatorów negatywnych, takich jak ne lub ncont, aby wykluczać dopasowania.
text
(req.method.eq:POST OR req.method.eq:PUT) AND resp.code.gte:500Przykładowe zapytania
Znajdź żądania POST, które zwróciły błąd z zakresu 500:
text
req.method.eq:POST AND resp.code.gte:500Znajdź żądania z nagłówkiem Authorization:
text
req.header["Authorization"].value.existsZnajdź duże odpowiedzi z określonego hosta:
text
req.host.eq:api.example.com AND resp.len.gt:100000Znajdź żądania oznaczone do dalszej analizy:
text
req.tag.eq:followupZnajdź wszystkie żądania z dołączonym ustaleniem:
text
req.has_finding.eq:trueZnajdź żądania, w których treść odpowiedzi zawiera znany ciąg błędu:
text
resp.body.cont:"stack trace"Zapisane wyszukiwania
Użyj Przypnij obok pola HTTPQL, aby zachować często używane zapytanie do szybkiego ponownego wykorzystania. Wybierz przypięte zapytanie, aby je zastosować; usuń jego etykietę, gdy nie jest już potrzebne. Historia zapytań również pomaga ponownie wykorzystywać ostatnie wyrażenia.
Karty wyszukiwania umożliwiają porównywanie niezależnych zapytań podczas bieżącej wizyty. Nie są trwale zapisanymi wyszukiwaniami. Nazwane, uporządkowane zestawy ustawień, które można eksportować i importować, są dostępne na stronie Filtry.
Analiza wyników
Kliknij dowolny wiersz w tabeli wyników, aby otworzyć żądanie i odpowiedź w panelu inspektora. Inspektor to ten sam widok co w Historii HTTP: można przełączać między widokiem surowym i sformatowanym, kopiować nagłówki lub treść i dodawać ustalenia bezpośrednio z tego panelu.
Pomoc AI
Gdy dostawca AI jest skonfigurowany, kliknij AI obok pola zapytania, aby opisać zwykłym językiem, co chcesz znaleźć. Ogma wygeneruje wyrażenie HTTPQL. Sprawdź zapytanie przed uruchomieniem.
- „Żądania POST zwracające błędy serwera” >
req.method.eq:POST AND resp.code.gte:500 - „Odpowiedzi większe niż 50 KB z subdomeny API” >
req.host.cont:api AND resp.len.gt:51200 - „Żądania z dołączonymi ustaleniami” >
req.has_finding.eq:true