Toaster Lite – HTTP/AMF monitoring tool
My little pet project called Toaster Lite has finally reached the point at which I can share it with the world. In its current state it is just a simple HTTP/AMF monitoring tool that lets you introspect your client-server traffic when doing your Flash/Flex development.
You may wonder why I built it. Well first of all I thought that it would be a cool example of what you can do with the ServerSocket API that came with AIR 2. Secondly I wanted to get better understanding of AMF (Action Message Format) structure. And, last and not least I have further plans for it and what I would like to achieve at some stage is functionality similar to soapUI but for AMF. (BTW: did you know that soapUI has some basic support for AMF but obviously not enough for me
)
So what I’m planning for the next release is the ability to create test suites and test cases based on monitored requests and being able to replay these accordingly. At some point I would like to be able to perform load/stress testing of AMF services with it. I know this is something that would require threading support but maybe the Flash Player team will solve this somehow. If not, I may endup using Java to do this part of the job and integrate it with the UI using Flerry.
When building Toaster I managed to extract part of it into a separate as3 library called amf-message-deserializer, which can deserialize AMF requests received through the ServerSocket. The library project is available here in GitHub. I want to credit my fellow evangelist James Ward for his JSAMF project, which was a great help and a starting point. Other good resources to really understand AMF0 and AMF3 are their open specs available through this site.
To install Toaster Lite just use the badge below:
UPDATED 2011.01.13 – recorded a screencast with Toaster Lite tour:



Awesome, going to try it now. Thanks for making this available.
Stefan Richter
13 Jan 11 at 10:08 am
Really cool project! Just tried it, and can’t get it to work.
Maybe a small guide would be great.
Will try some more.
Paw Suddergaard
13 Jan 11 at 11:00 am
@Paw to use it, you have to:
1. Set a local port that you want Toaster to listen on, you can probably use 8401 as a default one.
2. In your application you have to configure your AMF services to go through localhost:8401 for example http://localhost:8401/messagebroker/amf.
3. In Toaster set remote address and remote port pointing to your actual AMF service. In case you have your server on your local machine you can set localhost and whatever port you are using.
p.
Piotr Walczyszyn
13 Jan 11 at 11:17 am
[...] comments Today I recorded a screencast with the Toaster Lite tour, it quickly demonstrates how it works and how to use [...]
Screencast with Toaster Lite tour at Space of Flex/AIR technologies
13 Jan 11 at 4:42 pm
Cool!
AMF Service exploration and method invocation, would be absolutely fantastic – do look into this..
Ulrik Bo Larsen
13 Jan 11 at 4:56 pm
when i’m trying to start the toaster with local port 80 it says “Error binding to local port: Error #2002″… Why?
Andrei
13 Jan 11 at 10:24 pm
@Andrei it probably means port 80 is already used by another process, try another port. Check also if firewall on your machine is not blocking it.
Piotr Walczyszyn
14 Jan 11 at 9:26 am
Thanks for sharing. I’ve had lot’s of trouble getting Charles to sniff AIR applications communicating with localhost.
I really hope toaster lite will help with Flex AIR revelopment.
THANKS FOR SHARING!
Andre Venter
14 Jan 11 at 9:53 am
[...] install it. It’s quite small. Configure port and that’s [...]
How to introspect AMF communication
14 Jan 11 at 2:26 pm
Great tool! I was missing this kind of app for years. Thanks a lot.
Juraj Michalek
14 Jan 11 at 2:38 pm
Hey great work!. Very useful and looking for the updates in next version.
Btw, you might want to add some copyright/license blocks in your code. People should give credit when reusing you know
Akshay
14 Jan 11 at 4:07 pm
Finally, ive always waited something in AIR.
Btw, think its too much for a challenge to add Android support here ? For to test apps on Emulator or Device and still be able to track requests ?
Been searching for that last days now…
Danel Kirch
15 Jan 11 at 10:19 am
@Danel it should support your mobile apps also, just configure your RemoteObject endpoint to the IP address of your desktop machine where you have Toaster installed and running.
p.
Piotr Walczyszyn
15 Jan 11 at 10:27 am
@Akshay thanks for an advice on copyright/license thing. I just updated the source code to include LGPL3 licensing.
Piotr Walczyszyn
15 Jan 11 at 11:20 am
[...] http://www.riaspace.com/2011/01/toaster-lite-httpamf-monitoring-tool/comment-page-1/#comment-5309 [...]
Toaster Lite – HTTP/AMF monitoring tool « rksaran
17 Jan 11 at 7:06 am
The application could not be installed because the installer file is damaged. Try obtaining a new installer file from the application author.
Mac OS X 10.7.3
ideas?
someone
7 May 12 at 2:56 pm
hmmm i got same issue as someone:
The application could not be installed because the installer file is damaged. Try obtaining a new installer file from the application author.
Using latest version of AIR on Windows Vista.
testy
28 Sep 12 at 10:26 pm
Piotr, is it possible to get a running installer? The application does not seem to be work anymore (see comments above).
Kai
18 Oct 12 at 1:53 pm
Please update the installer! Could not install it.
Running Windows 7…
thaxy
31 Dec 12 at 6:49 pm
… doesn’t work in XP-Mode either!
thaxy
31 Dec 12 at 7:37 pm