I had to do this exactly before the video (i.e. jpeg).
I note that you just said "binary data" ... is this image data or not? what is it?
multipart / x-mixed-replace works great in many browsers. I think this may even be supported in later versions of IE. This certainly works in all versions of firefox from about 5 years ago when I had to implement this. Webkit-based browsers may be supported, including Chrome and Safari.
However, in my opinion, this is really only suitable for LAN-based applications. The reason is because you are sending a lot of data. Instead of sending the difference between consecutive frames (if this video), you will send all the images every time. Depending on the number of users, this can also put a heavy load on the server for bandwidth.
Thus, while multipart / x-mixed-replace is by far the easiest to implement, this is not necessarily the most suitable solution. Again, this depends on your original data type.
For a video, you could theoretically write something in javascript to do this. In fact, if you use Google for a javascript video player, you can find it. I doubt they are terribly fast and are likely to put a heavy strain on the client machine. However, this seems doable.
So, your options: 1) Content type mixed-replace 2) Download the plugin Built-in browser plugin (the fastest of all the most effective) Flash or Silverlight 3) Javascript based player
If this is the video you need, the last parameter that is on the verge of bleeding, 4) HTML5 based video. http://www.html5video.org/ Since the standards are still ratified and browser support is limited, I would not recommend it at this time.
source share