Sunteți pe pagina 1din 14

Almost every application these days seem to communicate

over HTTP. As a developer, we might not need paying much


attention to this low level most of the time, but sometimes a
problem might show up that needs us to drop to the level of
the network to figure out what is going on. In such
situations, using logging-proxy tools could make our life
much easier. In general, those man-in-the-middle can be
used for all sorts of things:

● Observing the HTTP requests/ responses


● Modifying the HTTP requests/ responses
● Network Throttling,…

There are a number of good options that can fill the role of a
logging proxy. Among them, there are highly-matured tools
like ​Wireshark, Charles ​or ​Fiddler​…. and there are some
newly-developed tools like ​Debookee​ or ​Proxyman​. Each
of them has its own advantages/disadvantages so let’s take a
quick look into those available options and find out which
one that fits your needs
1. Features and Pricing

All of the above tools offer developers full-features to greatly


facilitate the debugging procedures. To be more specific:

Basic features:

● Intercept and analyze​ the HTTP/HTTPS network


requests/responses.
● Observe requests/responses on ​mobile
devices/simulators
● Repeat, Compose​ requests/responses.
● Export​ requests/responses to common files (HAR
Format, Log, …)

Advanced features:

● Local Map:​ match requests (by given rule) and


replace the response with the local files
● Breakpoint:​ set a breakpoint on matched requests
or responses and able to manipulate the content
on-the-fly
● Whitelist/Blacklist:​ allow or block certain
requests
● Rewrite:​ define changes to one or more calls in
advance and have them apply at runtime
● External Proxying:​ Proxy to the external central
server (suitable for big companies owing a Proxy
server)
● Network Throttling:​ simulate various types of
network connections

Despite the similarity in features and functionalities, pricing


varies a lot depending on the target users of each company.
Wireshark​ used to be a go-to option for both individuals and
enterprises as it was the first tool that offer full set of proxy
features in the market. However, after 15 years released, it
seems to start causing inconvenience and developers now
shift to more newly developed tools like ​Charles​, ​Fiddler​,
Debookee​ or ​Proxyman​. While ​Fiddler​ targets Enterprises
($999/ license) or ​Debookee​ costs over 300$ to purchase all
essential features, ​Charles​ and ​Proxyman​ seems to be more
reasonable for both Individuals and SMEs due to the
affordable pricing packages (~$50/license).

2. UI, UX and supported OS


● Wireshark
Wireshark is a highly credible cross-platform application
which has been released since 1998. Although the UI is not
quite modern, current Wireshark version supports all
platforms including macOS, Window and Linux. Some
advanced features of the app are designed with a lot of
low-level information to satisfy hard-core developers so it
might not be suitable or friendly to junior developers

● Charles
Similar to Wireshark, CharlesProxy is another
cross-platform application written in Java language to
support all platforms. This app has simplified proxy features
to make it become more accessible, however both UI and UX
of the app have not been optimized and polished yet.
Flood of unknown requests/responses

With that being said, it is still a highly matured and stable


application which is used to facilitate the debugging
procedures on all OS devices

● Proxyman
The last application of today’s post is ​Proxyman​. This is a
native, high-performance application designed to run with
minimum system resource consumption. Although the app
offers comprehensive debugging features, one biggest
disadvantage of this app is that it does not support Window
and Linux
iOS Setup Guide for Proxyman

iOS Setup Guide for Charles

However, it could be seen that ​Proxyman​ has tinkered both


UI and UX to make the app more accessible to all developers
and pleasant to use as a daily tool
Which application is for you?
It is hard to decide whether those applications are good or
bad as it depends a lot on our own needs and preferences. In
my opinion:

● If you are a ​hacker/developer/security


developer​ who need a full-set proxy tools to dig
deep into the network level, ​Wireshark​ might be
your go-to option.
● If you are a developer/security developer who need
using package analyzers on ​Window OS​, you might
consider using ​CharlesProxy​.
● If you are a QA/developer/security developer who
want a native, high-performance application on
macOS​, it is worth trying ​Proxyman​.

S-ar putea să vă placă și