views:

476

answers:

2

I have a case where I need to serve "raw" swf files to the browser. That is, without embedding. We have had some problems making this work in IE now and then but managed to work around it. Until now. We're fixing some other issues with serving documents and as a side effect the flash files stop working in IE. Flash controls the browser display area (you get the Flash context menu instead of IE:s) but the flash file doesn't render.

I can't figure out what I've changed that made it stop working. Much because our workarounds for making it work have been true trial-and-error efforts. (We've never quite understood the underpinnings of the problem.)

The flash files render fine in the previous version of our system. I've tested with Flash Player 9 and 10 and there's no difference.

I'm totally stuck. Anyone has a clue on where I could try some digging?

EDIT: Following the advice by MatthieuP and Kristian J, I found out what it was about. It wasn't the headers as such, but the proxy I used for looking at the headers revealed an interesting thing**:

When IE fetches an swf that's not embedded it requests the file twice (I'm guessing that the ActiveX component creates a HTML document with the embed code in it and then the file gets requested from that document too.)

This duplicate fetching spells p r o b l e m s for us since file requests to our system needs to have a valid one-time token to succeed. It's doomed to fail for the second request.

Thanks for your answers. You got +1 each from me for giving it a shot.

+1  A: 

Have a look to response headers with old and new system; wrong content type, content-Length could freak flash player.

MatthieuP
+1  A: 

Like MatthieuP said; try comparing the response headers. Beware that recent versions of the flash player chokes on the

Content-disposition: attachment

header.

Kristian J.