Una dintre abilitățile esențiale pentru un dezvoltator și administrator de sistem este să depaneze aplicația, API-ul sau serviciile, iar cunoașterea instrumentelor potrivite este o salvare de viață.
Cuprins
Ce este Depanarea?
Dacă vizionați drame criminale, atunci ideea din spatele depanării nu vă va fi străină. Depanarea este un proces și implică o mulțime de tactici. Este găsirea și rezolvarea sistematică a problemelor și erorilor în cadrul unui program.
În plus, depanarea rezolvă toate problemele care pot împiedica funcționarea corectă a software-ului sau, în acest caz, a aplicației web. Procesul de depanare a API-ului sau a aplicației dvs. web implică în primul rând o încercare de a reproduce problema.
În consecință, apare necesitatea de a trimite o solicitare API. Acum, aici este problema. Majoritatea browserelor vă vor împiedica să schimbați antetul de origine și chiar limitele privind dimensiunea URL.
Cu alte cuvinte, pentru a reproduce problema, poate fi necesar să efectuați unele manipulări HTTP. Și acest lucru va necesita niște instrumente puternice de depanare.
Toate componentele sau tacticile procesului de depanare includ;
- Depanare interactivă
- Analiza fluxului de control
- Testarea unitară
- Testarea integrării
- Analiza fișierului jurnal
- Monitorizarea
- Dumps de memorie
- Profilare
Este interesant de știut că unii clienți HTTP, adică browserele web, au încorporate instrumente de dezvoltare web. Aceste instrumente pot fi folosite pentru a depana API-urile. Având în vedere acest lucru, nu este necesar să vă scrieți instrumentul de depanare.
Ce este clientul HTTP?
Să presupunem că vă gândiți să construiți un sistem care să folosească protocolul HTTP pentru comunicații distribuite sau HTTP, cum ar fi o aplicație web. Apoi poate doriți să vă uitați la componenta client HTTP.
HTTP, sau HyperText Transfer Protocol, este motivul pentru care puteți comunica sau transfera date pe web, de fiecare dată când introduceți o adresă URL. Este un protocol de aplicație care face posibilă navigarea pe internet.
Acum, Clientul HTTP este un sistem care trimite cereri către un server în format text HTTP și, la rândul său, primește un răspuns de la același server.
Este esențial să cunoașteți diferențele dintre un client HTTP și serverul HTTP.
Diferențele dintre client și server HTTP
În timp ce clientul HTTP este adesea browsere web sau utilitare, serverele HTTP acționează ca proxy pentru serverele de aplicații.
Cu cuvinte mai simple, smartphone-urile, televizoarele, PlayStation, într-adevăr orice dispozitiv care se poate conecta la internet, utilizează probabil un client HTTP.
În mod similar, serverul HTTP este computerul din rețea la care se conectează clientul HTTP. Relația pe care o împărtășesc este mai mult una conversațională. Unde clientul HTTP trimite o cerere și serverul HTTP răspunde.
Exemple de solicitări HTTP
Cereri
Rezultate
OBȚINE
Solicită întreaga resursă
CAP
Solicită resurse fără organism
POST
Adaugă conținut la o resursă web existentă
A PUNE
Modifică o resursă web existentă
ȘTERGE
Elimină o resursă specificată
URMĂ
Afișează modificările aduse unei resurse web
OPȚIUNI
Afișează metodele HTTP disponibile pentru adresa URL
CONECTAȚI
Convertește conexiunea de solicitare într-un tunel TCP/IP transparent
PLASTURE
Modifică parțial o resursă web
Depanarea web nu a fost niciodată mai ușoară. Cu aceste instrumente, vă puteți relaxa în sfârșit în timp ce faceți ceea ce vă place.
HTTPie
Scopul final al HTTPie este de a face interacțiunea CLI cu interfața utilizatorului serviciilor web prietenoasă. Acest instrument oferă o comandă HTTP pentru trimiterea cererilor, toate cu utilizarea unei sintaxe naturale.
HTTPie poate fi folosit pentru depanare, testare și conectarea la serverele HTTP. Acceptă HTTP, HTTPS și proxy.
Repere
- Sistem de suport JSON încorporat
- Poate fi instalat pe Windows, macOS și Linux
- Antete și metodă HTTP personalizate
- Trimiteți formulare
- Modul offline
- Autentificare de bază și digerată
- Sintaxă intuitivă
Nu doriți să instalați HTTPie local?
Nu vă faceți griji, acum îl puteți rula pe net.
Lăutar
Lăutar este un proxy de depanare web multiplatformă. Poate ajuta la manipularea sesiunilor web, la inspectarea traficului HTTPS și la monitorizarea traficului dintre computer și Internet.
Puteți instala Fiddler pe Windows, macOS și Linux. Este probabil cel mai popular instrument de depanare a traficului.
RESter
RESter este disponibil ca extensie pentru Google Chrome și Firefox.
Repere
- Antete de autorizare cu autentificare Basic sau Auth2
- Vedeți istoricul solicitărilor
- Efectuați solicitări cu orice metodă, adresă URL, corp și anteturi personalizate
- Testarea și depanarea API-urilor
Laba
Laba este un client HTTP cu funcții complete, care vă permite să trimiteți tot felul de solicitări HTTP. Cu Paw, vă puteți testa API-urile și, de asemenea, puteți explora altele noi.
Paw este creat exclusiv pentru macOS și are funcții ușor de utilizat. Puteți importa și genera swagger, RAML etc. și acceptă schema JSON.
Repere
- Acceptă autentificări multiple, cum ar fi de bază, OAuth, hawk, digest
- Valori dinamice
- Medii
- Extindeți prin extensii bazate pe java-script
- Cookie-uri și manipularea sesiunii
Solicitantul
Solicitantul este un client robust care combină caracteristicile HTTPie, Postman și Paw. Funcționează numai cu editorul Sublime Text.
Repere
- Suporta JSON Schemer
- Solicitați colecții și istoric
- Ieșire colorată cu evidențiere de sintaxă
- UX modern
- Cookie-urile, anteturile personalizate, corpul solicitării și parametrii de interogare sunt ușor de setat.
- Suport GraphQL
Poştaş
Lucrezi mereu la API-uri?
Te vei îndrăgosti de Postman.
Poştaş este, fără îndoială, unul dintre cei mai populari clienți HTTP folosiți pentru depanarea aplicațiilor web. Permite o dezvoltare mai rapidă și mai ușoară a API-ului.
Repere
- Include o interfață grafică puternică, cu o interfață ușor de utilizat
- Istoricul cererilor
- Testare automată cu runner de colectare
- Monitorizare API flexibilă
- Suport REST, GraphQL, SOAP
- Suport pentru încărcături utile multiple, inclusiv JSON și HTML
răsuci
cURL este un instrument de linie de comandă care este utilizat pentru trimiterea de date folosind sintaxa URL.
Lucrul bun, cURL este instalat implicit pe majoritatea sistemelor de operare cu aromă UNIX. Acceptă multe protocoale, inclusiv FTP, LDAP, POP3, SMTP, GOPHER, IMAP, HTTP, HTTPS și SCP.
Charles Proxy
După cum spune și numele, Charles mandatar este un proxy HTTP și invers. Funcționează prin direcționarea traficului local prin el.
Puteți utiliza Charles pentru proxy SSL, limitarea lățimii de bandă, depanare AJAX, puncte de întrerupere și multe altele.
Fluier
Fluier este un instrument de depanare multiplatformă bazat pe NodeJS pentru a captura și manipula traficul HTTP, HTTPS, WebSocket și TCP.
Mai întâi, trebuie să instalați NodeJS și apoi Whistle folosind npm.
npm install -g whistle
Puteți extinde întotdeauna funcțiile cu pluginul dacă caracteristicile implicite nu se potrivesc cerințelor dvs.
mitmproxy
mitmproxy este un proxy HTTPS cu sursă deschisă popular printre cercetătorii de securitate. Utilizați-l ca CLI, web sau API Python.
Interfața web vă oferă aspectul instrumentelor pentru dezvoltatori Chrome. Suportă și HTTP/2.
Proxyman
Similar cu Laba menționată mai sus, Proxyman este o aplicație proxy nativă premium de depanare web macOS.
Acționează ca un om de mijloc pentru traficul web și oferă multe caracteristici, inclusiv următoarele.
- proxy SSL
- Repetă solicitările
- Protobuf
- Rescrierea scripturilor
- Hartă locală și de la distanță
- Filtrarea conținutului
- Evidențierea sintaxelor
Interfața de utilizare Proxyman este foarte prietenoasă cu oamenii.
Setul de instrumente HTTP
Setul de instrumente HTTP este un depanator HTTP cu sursă deschisă. Este o aplicație desktop disponibilă pentru Windows, Mac și Linux.
Spre deosebire de alte dispozitive de depanare HTTP, HTTP Toolkit oferă interceptări direcționate automat pentru anumiți clienți, inclusiv configurarea HTTPS, mai degrabă decât interceptarea totul de pe întregul computer, și astfel evită captarea traficului irelevant sau perturbarea altor aplicații.
Cu un singur clic puteți intercepta ferestrele browserului (inclusiv Chrome, Firefox și altele), limbaje de backend/scripting precum Node.js, Python și PHP, orice instrumente de linie de comandă, aplicații Electron sau dispozitive și emulatori Android (inclusiv sistem- nivel de interceptare HTTPS).
Kitul de instrumente HTTP acceptă funcții standard de depanare HTTP, inclusiv punctele de întrerupere și rescrierea traficului HTTP(S), filtrarea și căutarea traficului colectat și evidențierea și formatarea automată pentru multe formate populare de corp de solicitare și răspuns. Funcțiile de bază pentru a intercepta, inspecta și rescrie HTTP(S) sunt toate disponibile gratuit, în timp ce unele funcții premium avansate precum import/export și reguli automate simulate necesită un cont plătit.
Concluzie
Clienții HTTP de mai sus și proxy-ul de depanare web vă pot ajuta în multe feluri. Cele mai multe dintre ele sunt gratuite sau oferă o probă, așa că încercați unele dintre ele pentru a vedea ce funcționează pentru dvs.
Depanare fericită!