I want to implement web browser monitor in java (to track all the communication between browser and web application). I started with simple proxy servlet, but I realized that ajax calls are not going through the proxy. Is there some way how to catch also ajax calls? Is there some way how java can hook into the browser communication other than proxy?
What is the proxy servlet? Does the browser use it to connect to the proxy? If yes, then the AJAX must pass through the proxy because there is no other way for the browser to connect to the internet/ outside world.
You need to make sure if the browser settings are correct and it is not connected directly to the internet.
Proxy servlet is just a simple servlet I deployed to tomcat ROOT, which just forwards the requests and send responses back. Since the requests and responses available here they can be traced or even modified.
I have set up proxy server in firefox in network setting, I checked the option - use for all protocols. But after I shuted down the proxy servlet the page was still updated in the browser by regular ajax calls. So it look like that ajax is bypassing the proxy server.
Maybe I can try to disable firefox to access internet in firewall settings and see what happens then.