103 votes

Wireshark vs Firebug vs Fiddler - avantages et inconvénients ?

Récemment, j'ai rencontré un problème où une application CGI ne répond pas. Le symptôme est que Firefox affiche :

Transfert de données depuis localhost...

Mais le problème est que je ne vois pas de trafic dans le panneau Net de Firebug, et le navigateur reste toujours sur la même scène.

Je réfléchis aux moyens de déboguer cette application, mais je ne peux pas voir le code source ni aucun de ses composants Java/C++ compilés. Je pense donc qu'un diagnostic au niveau du réseau HTTP serait un bon début.

J'ai peu d'expérience avec Fiddler et Wireshark, je me demande simplement s'ils obtiendront un meilleur retour d'informations/statistiques au niveau du réseau HTTP ? J'ai entendu dire que Wireshark est avancé mais qu'il pourrait introduire un grand volume de trafic, ce qui fait que les administrateurs système ne l'aiment pas beaucoup. Pour l'instant, je pense que Firebug ne me montre pas vraiment assez d'informations.

J'ai besoin de collecter des informations afin de pouvoir les transmettre au client comme preuve.

4 votes

Je ne recommanderais pas Charles parce qu'un seul développeur y travaille. Et s'il arrête de travailler sur l'application ou se fait renverser par un bus ? De plus, il semble qu'il ne réponde pas aux demandes d'assistance. Je dépenserais mes 50 $ ailleurs. Quant à Fiddler L'assistance est légèrement meilleure, mais elle peut prendre son temps car il s'agit d'un outil gratuit. Que me reste-t-il ? Probablement wireshark ou mitm proxy.

2 votes

@testerjoe2 le proxy mitm est très lent et pas aussi bon que fiddler.

89voto

mikek3332002 Points 1989

Wireshark, Firebug, Fiddler font tous des choses similaires - capturer le trafic réseau.

  • Wireshark capture tout type de paquet réseau. Il peut capturer les détails des paquets en dessous de TCP/IP (HTTP est en haut). Il dispose de filtres pour réduire le bruit qu'il capture.

  • Firebug suit chaque requête effectuée par la page du navigateur et capture les en-têtes associés ainsi que le temps pris pour chaque étape de la requête ( DNS, réception, envoi, ... ).

  • Fiddler fonctionne comme un proxy HTTP/HTTPS. Il capture chaque requête HTTP effectuée par l'ordinateur et enregistre tout ce qui y est associé. Il permet des choses comme la conversion des variables de post en tableau et l'édition/la relecture des requêtes. Il ne capture pas, par défaut, le trafic localhost dans IE, voir la FAQ pour la solution de contournement.

46voto

Macy Abbey Points 2502

L'avantage de WireShark est qu'il peut éventuellement vous montrer des erreurs dans des niveaux inférieurs au protocole HTTP. Fiddler vous montrera les erreurs dans le protocole HTTP.

Si vous pensez que le problème se situe quelque part dans la requête HTTP émise par le navigateur, ou si vous cherchez simplement à obtenir plus d'informations sur ce que le serveur répond ou sur le temps qu'il met à répondre, Fiddler peut vous aider.

Si vous pensez que quelque chose ne va pas dans le protocole TCP/IP utilisé par votre navigateur et le serveur (ou dans d'autres couches inférieures), utilisez WireShark.

3 votes

En effet, Wireshark peut découvrir les problèmes de proxy et de serveur nat, il peut également être utilisé à la fois sur le client à partir duquel vous vous connectez et sur le serveur.

35voto

Alex Points 21247

Aucune de ces réponses, si vous êtes sur un Mac. Utilisez Charles Proxy . C'est le meilleur collecteur d'informations sur le réseau/les requêtes que j'ai jamais rencontré. Vous pouvez visualiser et modifier toutes les requêtes sortantes, et voir les réponses à ces requêtes sous plusieurs formes, en fonction du type de réponse. Il coûte 50 dollars pour une licence, mais vous pouvez télécharger la version d'essai et voir ce que vous en pensez.

Si vous êtes sous Windows, je préfère rester avec Fiddler.

1 votes

Ah, ça semble être génial.

16 votes

Pourriez-vous nous expliquer en quoi Charles est différent de quelque chose comme Fiddler ? Ce que vous avez mentionné ci-dessus ressemble beaucoup à Fiddler. J'utilise actuellement fiddler mais je serais heureux d'utiliser quelque chose de mieux si j'en retire quelque chose de plus.

29 votes

Charles et Fiddler sont architecturalement assez similaires. Charles fonctionne sur un Mac, ce qui n'est pas le cas de Fiddler. Charles est écrit en Java et coûte cher. Fiddler est écrit en C#, gratuit, et facilement extensible en .NET.

17voto

neimad Points 51

Fiddler est le gagnant à chaque fois quand on le compare à Charles.

La fonction "personnalisation des règles" de fiddler est sans équivalent dans les débogueurs http. La possibilité d'écrire du code pour manipuler les requêtes et les réponses http à la volée est inestimable pour moi et le travail que je fais dans le développement web.

Il y a tellement de fonctionnalités dans fiddler que Charles n'en a pas et n'en aura probablement jamais. Fiddler a des années-lumière d'avance.

4 votes

Sauf que fiddler n'est d'aucune utilité quand on ne travaille pas sous Windows. Vous pouvez aussi mettre un proxy entre les deux, puis vous pouvez le faire vous-même (en C#). Par exemple mentalis.org/soft/projets/proxy . Aucun Fiddler n'est nécessaire. Je n'ai plus de système Windows à la maison - seulement des Linuces basés sur ARM. Et j'en suis très heureux.

0 votes

Vous avez mentionné de nombreuses caractéristiques de fiddler que Charles n'a pas. Quelles sont ces caractéristiques ?

4voto

jburgess Points 73

Si vous développez une application qui transfère des données à l'aide de AMF (assez courante dans un ensemble particulier de API web du SIG que j'utilise régulièrement), Fiddler ne fournit pas actuellement un décodeur AMF qui vous permettra de visualiser facilement les données binaires dans un format facilement lisible. Charles fournit cette fonctionnalité.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X