Thursday, December 31, 2009

Fix your Flex HTTP Error / Stream Error with IE6 / IE7 on HTTPS


When using the Flex HttpService object to access an http resource from within your application, take care to test it under Internet Explorer too. Due to a bug in IE you could receive a Http Error or Stream Error in your Flex application when it’s running in https (secure) mode.
Normally when your backend responds to the HTTP request, it’ll use a Cache-control: no-cache, so the browser doesn’t cache the response in its browser cache. (as the response is normally dynamic and could change anytime).
As Flex is running in the Adobe Flash ActiveX player this however instructs IE to already delete the response, before the ActiveX plugin manages to get the results.
You’ll need to change your backend to set the following HTTP Response header:

Cache-Control: no-store
This means: “do not store this response for any longer than necessary to display it” (more info at Atlassian)


No comments: