GUI
netsleuth's inspection GUI is built on the Chrome DevTools interface. If you've ever used the Chrome's built-in developer tools (particularly the Network tab), you're already familiar with netsleuth's GUI.
To learn more about the DevTools GUI basics, check out Google's documentation:
Getting started with the Network Inspector Network Inspector reference
Differences from the Chrome DevTools
Although many of the features and functionality of netsleuth's GUI are the same as Chrome's, there are a few differences — the most obvious is that the netsleuth GUI only has the Network and Console tabs.
These items behave differently in netsleuth:
The Console does not run JavaScript expressions. Instead, it behaves more like a command line interface. Type
help
for a list of commands.If a message in the console relates to a particular request, a "Reveal request" button is added. Clicking the button will highlight the request in the list.
The "Disable cache" option cannot actually disable your client's cache; if it already has resources cached and fresh, it may not make requests. You may need to empty your client's cache if you need to force it to make requests.
With this option enabled, netsleuth modifies requests to make them unconditional (it removes
If-None-Match
,If-Modified-Since
, and setsCache-Control: no-cache
), and setsCache-Control: no-store
in responses."Request blocking" and "Offline" mode behaves differently depending on target type.
- For proxied requests (forward, reverse, and gateway), netsleuth responds to the client with a HTTP 450 Request Blocked error. The request is not sent to the target server.
- For node.js native integration targets, the HTTP
ClientRequest
simply emits anerror
event with aRequestBlockedError
. No network connections are made.
If an interception script modifies a request or response, the UI displays only the modified version, not the original.
If a HTTPS request to a target server fails TLS validation, you will see a dialog appear in the inspector UI that allows you to temporarily or permanently accept the invalid certificate.
If you do accept the invalid certificate, appears next to the request's hostname in the list to indicate that it was insecure.
The "Request URL" property in the request inspector (and hostname shown in the list) behaves differently depending on target type, but generally displays the URL as seen by the client.
- For reverse proxy and public gateway targets, the Request URL shows the netsleuth host URL (eg 127.0.0.2 or myapp.netsleuth.io).
- For forward proxy and node.js native integration targets, the Request URL shows the destination URL.
The "Remote Address" property in the request inspector behaves differently depending on target type.
- For reverse proxy and public gateway targets, the Remote Address shows the client's IP address.
- For forward proxy and node.js native integration targets, the Remote Address shows the server's IP address.
"Replay XHR" is called "Replay" and can replay any request, not just XHR requests.
The "Initiator" (and stack trace) is only available for node.js native integration targets.
The "Waterfall" graph and "Timing" inspector currently does not show detailed request/response stage timings.
Some "Save as…" menu items are currently unimplemented.
A number of items in the DevTools settings menu are not applicable but have not been removed from the UI. Please ignore.
Some features are not supported and/or not applicable in netsleuth and have been removed from the UI. This includes "Screenshots", "Preserve log" (the log is never cleared automatically), "Clear browser cache/cookies", and "Data URLs".