Inspektor zahtjeva za Webhook

Zalijepite webhook metodu, zaglavlja i tijelo da pregledate zahtjev i napravite komandu za testiranje koja se može kopirati.

Zahtjev za Webhook
Jedno zaglavlje po redu u formatu Ime: vrijednost.
Zalijepite tačno sirovo tijelo snimljeno prije bilo kakvog raščlanjivanja na strani servera.
Spreman. Zalijepite snimljeni webhook zahtjev.
Formatirano telo
Provjerite zahtjev da vidite ovaj izlaz.
Polja za potpis
Provjerite zahtjev da vidite ovaj izlaz.

Pronalaženje polja za potpis ne dokazuje da je zahtjev autentičan — stvarna verifikacija zahtijeva pravila potpisivanja pošiljaoca, tajnu ili ključ, te originalne bajtove zahtjeva.

Lokalni cURL test
Provjerite zahtjev da vidite ovaj izlaz.

Vaš zalijepljen zahtjev ostaje u vašem pretraživaču. BroBroGo ga ne prenosi niti sprema.

Česta pitanja

Koje formate tijela webhooka mogu provjeriti?

JSON i URL kodirana tijela obrasca su otkrivena i formatirana. Ostala tijela ostaju kao običan tekst tako da alat ne pogađa XML, višedijelni ili binarni sadržaj.

Da li pronalaženje polja za potpis dokazuje da je zahtjev autentičan?

Ne. Alat prikazuje samo potpis i povezana zaglavlja vremenske oznake. Prava verifikacija zahteva tačna pravila potpisivanja pošiljaoca, tajni ili javni ključ i originalne bajtove zahteva.

Može li ova stranica primiti povratni poziv webhooka uživo?

Ne. Zalijepite snimljeni zahtjev ovdje za pregled. Stranica ne kreira javnu krajnju tačku, ne prima povratne pozive niti šalje generirani zahtjev za testiranje.

Alat "Inspektor zahtjeva za Webhook" omogućava unos metode, zaglavlja i tijela snimljenog webhook zahtjeva radi analize njegove strukture i generisanja cURL komande za lokalno testiranje. Korištenjem ovog alata možete precizno ispitati format tijela zahtjeva te identifikovati prisustvo uobičajenih zaglavlja za vremenske oznake i digitalne potpise.

Proces obrade podataka odvija se lokalno: vaš zalijepljen zahtjev ostaje u vašem pretraživaču. BroBroGo ga ne prenosi niti sprema.

Struktura i uloga zaglavlja u webhook komunikaciji

Zaglavlja (headers) prenose ključne metapodatke o webhook zahtjevu. Ona definišu tip sadržaja, identifikuju pošiljaoca i sadrže sigurnosne tokene ili kriptografske potpise koji služe za provjeru autentičnosti.

Prilikom unosa zaglavlja u alat primjenjuju se sljedeća pravila i ograničenja:

  • Zaglavlja se unose u formatu jedno zaglavlje po redu, koristeći strukturu Ime: vrijednost.
  • Maksimalan dozvoljeni broj neopraznih redova zaglavlja je 200. Ako se unese više, alat prikazuje grešku: "Ima previše redova zaglavlja. Zadržite zahtjev na 200 zaglavlja ili manje.".
  • Maksimalna dužina teksta zaglavlja je 100.000 znakova. Prekoračenje ovog limita aktivira grešku: "Zaglavlja su predugačka za ovaj alat. Uklonite nepovezane ili ponovljene vrijednosti.".
  • Svaki red mora biti ispravno formatiran. U slučaju neispravnog unosa, alat javlja grešku: "‹line›: Linija zaglavlja je nevažeća. Koristite naziv: vrijednost.".

Formati tijela webhooka i pravila parsiranja

Tijelo (body) webhook zahtjeva sadrži stvarni teret (payload) koji aplikacija pošiljalac šalje na vašu krajnju tačku. Za ispravnu obradu webhooka ključno je sačuvati tačno sirovo tijelo snimljeno prije bilo kakvog raščlanjivanja na strani servera. Svaka izmjena u razmacima, redoslijedu polja ili kodiranju može onemogućiti kasniju verifikaciju potpisa.

Alat podržava unos tijela do maksimalno 1.000.000 znakova. Ako je uneseni sadržaj duži, prikazuje se poruka: "Telo je predugo za ovaj alat. Neka bude ispod 1.000.000 znakova.".

Ovisno o formatu, alat primjenjuje specifična pravila detekcije i oblikovanja:

  1. JSON format: Alat detektuje JSON sadržaj i raščlanjuje ga pomoću funkcije JSON.parse. Nakon parsiranja, podaci se ponovo formatiraju radi lakšeg čitanja, pri čemu se originalni razmaci i redoslijed polja gube. Ako tijelo izgleda kao JSON ali sadrži sintaksne greške, pojavljuje se greška: "Telo izgleda kao JSON, ali se ne može raščlaniti.".
  2. URL-encoded podaci: Formati poslani kao application/x-www-form-urlencoded se automatski prepoznaju i dekodiraju. Ako tijelo sadrži neispravan procenat izlaza (percent escape), alat ispisuje grešku: "Tijelo obrasca sadrži nepotpuni procenat izlaza.".
  3. Ostali formati: Svi ostali tipovi tijela zahtjeva prikazuju se kao običan tekst bez dodatnog formatiranja. Ako je tijelo zahtjeva prazno, u izlazu se prikazuje oznaka (prazno tijelo).

Identifikacija zaglavlja potpisa i vremenskih oznaka

Sigurnost webhook komunikacije često se oslanja na kriptografske potpise i vremenske oznake (timestamps) koji sprječavaju napade ponavljanjem (replay attacks).

Alat automatski pretražuje unesena zaglavlja i pokušava identifikovati uobičajene sigurnosne elemente na osnovu prepoznatljivih uzoraka u nazivima, kao što su signature, hmac, digest i standardni nazivi za vremenske oznake.

Ako alat pronađe takva zaglavlja, ona će biti izdvojena i prikazana u sekciji za polja za potpis. U suprotnom, prikazuje se poruka: "Nije pronađen nijedan zajednički potpis ili webhook zaglavlje vremenske oznake.".

Važno je razlikovati inspekciju od stvarne verifikacije autentičnosti. Pronalaženje polja za potpis ne dokazuje da je zahtjev autentičan — stvarna verifikacija zahtijeva pravila potpisivanja pošiljaoca, tajnu ili ključ, te originalne bajtove zahtjeva. Alat ne vrši kalkulaciju HMAC vrijednosti, ne izvršava kriptografske algoritme, ne poredi originalne bajtove niti provjerava vremenske prozore pošiljaoca.

Lokalno testiranje pomoću cURL komande

Jedna od ključnih funkcionalnosti alata je generisanje cURL komande koja omogućava repliciranje primljenog webhook zahtjeva u lokalnom razvojnom okruženju.

Generisana komanda je prilagođena za izvršavanje u komandnoj liniji (shell-quoted) i fiksirana je na lokalnu adresu: http://localhost:3000/webhooks.

Ova funkcionalnost omogućava API programerima i inženjerima integracije da jednostavno kopiraju komandu i ponovo pošalju identičan zahtjev (sa istim zaglavljima i tijelom) svom lokalnom servisu koji se izvršava na portu 3000, bez potrebe za ručnim konstruisanjem HTTP zahtjeva.

Česta pitanja (FAQ)

Može li ova stranica primiti povratni poziv webhooka uživo?
Ne. Zalijepite snimljeni zahtjev ovdje za pregled. Stranica ne kreira javnu krajnju tačku, ne prima povratne pozive niti šalje generirani zahtjev za testiranje.

Koje formate tijela webhooka mogu provjeriti?
JSON i URL kodirana tijela obrasca su otkrivena i formatirana. Ostala tijela ostaju kao običan tekst tako da alat ne pogađa XML, višedijelni ili binarni sadržaj.

Da li pronalaženje polja za potpis dokazuje da je zahtjev autentičan?
Ne. Alat prikazuje samo potpis i povezana zaglavlja vremenske oznake. Prava verifikacija zahteva tačna pravila potpisivanja pošiljaoca, tajni ili javni ključ i originalne bajtove zahteva.

Šta se dešava ako pokušam pokrenuti analizu bez unesenih podataka?
Ako u polja za unos ne unesete nikakve podatke, alat će prikazati poruku o grešci: "Prvo zalijepite barem jedno zaglavlje ili tijelo zahtjeva.".