web-dev-qa-db-fra.com

Vous recherchez un proxy de débogage HTTP pour Mac similaire à Fiddler sous Windows

Dans les emplois précédents, lorsque je travaillais sur une machine Windows, j'avais utilisé Fiddler pour afficher les transactions HTTP et le débogage.

Je cherche en particulier à surveiller les transactions HTTP d'un site ajax sur lequel je travaille pour vérifier que le site fonctionne comme prévu. La réécriture de HTTP (fournie par Fiddler) est pratique, mais pas indispensable.

Quelqu'un peut-il recommander quelque chose de similaire pour une utilisation sur un Mac?

237
Doug Harris

J'ai trouvé Charles Proxy . C'est beaucoup plus proche de la fonctionnalité de Fiddler. Ce n'est pas gratuit, mais ça vaut peut-être le prix.

69
Doug Harris

Utilisez Chrome et accédez à chrome: // net-internals /

Il permet une analyse détaillée et des vidages.

128
brains_at_work

Mon application Mac préférée pour surveiller le trafic est HTTPScoop , je détaille cela ainsi que l’utilisation de tcpdump à partir de la ligne de commande dans ce billet que j’ai blogué l’année dernière .

30
Ted Naleid

J'ai utilisé mitmproxy pour intercepter le trafic HTTP. C'est un excellent outil que vous pouvez utiliser pour déboguer des appareils mobiles ou tout système d'exploitation.

30
eikes

Ce n’est pas ce que vous avez demandé, mais dans Firefox, les En-têtes HTTP en direct add-on sont tout ce dont j’ai besoin pour modifier et relire les demandes, y compris la modification de l’URL et de la méthode HTTP.

 Live HTTP Headers

Dans Firebug, le Surveillance du réseau affiche toutes les demandes et réponses. De même, dans Safari, le volet Ressources de Web Inspector intégré couvre également la plupart de mes besoins. (Activez l'inspecteur Web via les préférences: Afficher le menu Développement dans la barre de menus .) Chrome et Firefox disposent d'outils similaires.

Quand les choses se compliquent, je lance mon Wireshark renifleur de paquets. Cependant, contrairement à Fiddler, Wireshark ne vous laisse pas changer les données, et ne prend pas en charge des éléments comme les répondeurs automatiques, comme le fait apparemment Fiddler.

Pour Wireshark, voir HTTP - certaines informations de capture HTTP génériques, et Capture de paquets HTTP pour déboguer Apache , pour certains exemples display filters. (Vous pouvez définir le filtre capture sur "port 80" pour afficher toutes les demandes à ce port et les réponses de ce port. Ou, pour limiter sur un serveur, utilisez capture filter "port 80 and Host www.google.com".)

# Afficher uniquement 404: page non trouvée 
 Http.response.code == 404 
 
 # Afficher uniquement certaines méthodes HTTP 
 Http.request.method == " POST "|| http.request.method == "PUT" 
 
 # Afficher uniquement le javascript 
 http.content_type contient "javascript"

Notez que Wireshark peut décompresser gzip ou dégonfler à la volée les éléments encodés (compressés). Cela rend les choses beaucoup plus faciles à lire car la plupart des serveurs Web compresseront les données qu’ils envoient à un navigateur.

(En ce qui concerne les répondeurs automatiques: l'excellent JS Bin présente une courte vidéo sur son utilisation pour déboguer les demandes Ajax. Si vous ne connaissez pas JS Bin, visualisez d'abord la vidéo d'introduction.)

19
Arjan

En plus de Charles (déjà mentionné), j'aime aussi le complémentHttpFoxpour Mozilla Firefox. Comme Charles, vous pouvez l’utiliser sur Mac et Windows. Il est plus léger que Charles car il réside dans le navigateur, ce qui est utile pour un dépannage rapide. Voici quelques informations de la page HttpFox:

HttpFox surveille et analyse tout le trafic HTTP entrant et sortant entre le navigateur et les serveurs Web.

Son objectif est d’apporter les fonctionnalités connues d’outils tels que HttpWatch ou IEInspector au navigateur Firefox.

Les informations disponibles par demande incluent:

  • En-têtes de demande et de réponse
  • Envoyé et reçu des cookies
  • Paramètres de chaîne de requête
  • Paramètres POST
  • Corps de réponse

Et une capture d'écran:

Screenshot of HttpFox add-on for Mozilla Firefox

7
Chris W. Rea

Ce n'est pas un proxy, mais cela aide à déboguer HTTP:

Commencez simplement une analyse sur l'interface sur laquelle vous allez avoir le trafic HTTP, exécutez le trafic, puis arrêtez l'analyse et tapez "HTTP" comme chaîne de filtrage. Vous pourrez alors inspecter tous les paquets de la conversation HTTP. Lorsque la vue Détail du paquet est ouverte, vous pouvez ouvrir la section HTTP et celle-ci restera ouverte entre les paquets.

C'est un excellent outil à utiliser et il ne vous oblige pas à modifier le proxy du navigateur. D'autre part, il ne peut pas aider le trafic HTTPS, car celui-ci est crypté. (Bien qu'il puisse déchiffrer les connexions SSL utilisant RSA )

6
w00t

Je suis en retard mais - j'utilise Proxy Paros . C'est en Java, donc, multiplate-forme. Cependant, si vous préférez que cette application soit présentée sous forme d'application, il y a un ici au bas.

5
Abhinav Gupta

N'oubliez pas Burp Suite. Ils ont une version gratuite. C'est la plate-forme transversale. http://portswigger.net/burp/

4
smileBot

Il semble que le libre GlimmerBlocker peut faire partie du tour.

Bien sûr, il peut bloquer tout type de contenu, et transformer les réponses avant que le navigateur ne les reçoive. Mais il peut en fait modifier les requêtes et les réponses . Et bien que ce ne soit pas un vrai débogage, il offre également une journalisation. Donc, cela pourrait convenir besoins de base :

GlimmerBlocker comporte 4 types de scripts, et certains objets ne sont définis que pour certains types de script:

  • proxy global: définit les paramètres du proxy global et permet de tester par exemple nom de lieu, réseau AirPort.
  • demande de modification: cela peut changer l'URL demandée, renvoyer une réponse de redirection au navigateur ou renvoyer text/html au navigateur.
  • expansion du mot clé. [Safari uniquement, AvB]
  • transformer: modifie la réponse reçue par le serveur Web avant qu'elle ne soit renvoyée à Safari [ou à tout navigateur configuré pour utiliser le proxy fourni par GlimmerBlocker, AvB].

(On peut également l'utiliser pour inclure divers scripts Greasemonkey dans la réponse reçue, sans utiliser un add-on Greasemonkey, comme pour bloquer Flash sans installer aucun add-on.)

2
Arjan

Vous pouvez facilement configurer Fiddler pour Mac en utilisant Parallels conformément aux instructions fournies sur leur site.

Le seul inconvénient est que vous devez configurer manuellement vos paramètres réseau pour qu'ils pointent vers l'adresse IP du VM, mais pas vraiment.

2
aleemb

jMeter pourrait également être utile; il est conçu pour tester les performances de charge sur les serveurs Web, mais il peut quand même faire ce dont vous avez besoin. jMeter est écrit en Java, vous pouvez donc télécharger un fichier .jar qui s'exécutera sur Mac, Windows ou Linux.

1
Evie
1
actuosus

Si vous avez affaire à un trafic d'applications ou à des intégrations d'API tierces via Internet public, vous devriez essayer Runscope (dont la divulgation complète est un co-fondateur). Il capture les requêtes HTTP vers n'importe quelle URL, vous donne une vue en flux Nice pour le débogage et facilite le partage de requêtes individuelles avec d'autres.

1
John Sheehan

Vous pouvez également essayer APIKitchen . Il vous aide à déboguer et à tester les API HTTP et toutes les demandes en général. Il existe également une version hors ligne à tester dans vos réseaux internes. Aucune installation nécessaire.

0
kontinuity