History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: LPP-1156
Type: Bug Bug
Status: Closed Closed
Resolution: Not Laszlo
Priority: P2 P2
Assignee: Unassigned
Reporter: Cameron Brown
Votes: 0
Watchers: 2
Operations

If you were logged in you would be able to see more operations.
OpenLaszlo

Serverless dataset load breaks if IE+HTTPS+Pragma: no-cache

Created: 01/Dec/05 04:53 PM   Updated: 11/Apr/08 11:48 AM
Component/s: Browser Integration
Affects Version/s: 3.1 (aka Denver), 3.0, 3.0.2
Fix Version/s: Attic

Time Tracking:
Not Specified

Environment:
WinXP IE6.0 + FlashPlayer 8 + Laszlo 3.1
WinXP IE6.0 + FlashPlayer 7 + Laszlo 3.0.2
WinXP IE6.0 + FlashPlayer 7 + Laszlo 3.0

Severity: Major
Platform: x86 - Windows XP
Runtime: SWF7


 Description  « Hide
Serverless dataset load fails for Internet Explorer if using SSL and the server issues a 'Pragma: no-cache' http header.
The same exact query will work fine under IE http & Firefox http or https. Only IE https fails.
This is NOT a crossdomain.xml issue.

I am using WinXP IE6.0 + FlashPlayer 8 + Laszlo 3.1
But it was also failing under Laszlo 3.0 + FlashPlayer 7 (I've had this problem for months, but I just finally figured out I could avoid it by getting rid of the "Pragma: no-cache" in the http headers returned by the app server)

Here's some example code:
===============================================================
PHP for the server side ("/prag-nc-test.php"):
===============================================================
<?
// Pragma: no-cache breaks serverless loads under https in IE,
// but works for http in IE and http and https in Firefox

//header('Pragma: no-cache');

print('<result>Irrelevant</result>');
?>
===============================================================
LZX Client:
===============================================================
<canvas height="350" width="100%" debug="true" proxied="false">
  <debug x="5" y="40" height="300" width="800"/>
  <dataset type="http" name="testds"
autorequest="false"
ontimeout="canvas.handleTimeout()"
          onerror="canvas.handleError()"
          ondata="canvas.handleData()"
          src="/prag-nc-test.php"/>

  <method name="handleData">
    Debug.write((new Date())+": Request succeeded.");
  </method>
  <method name="handleError">
    Debug.write((new Date())+": Request got an error -- sorry.");
  </method>
  <method name="handleTimeout">
    Debug.write((new Date())+": Request timed out (after "+(getTimer()-canvas.reqTime)+" ms) -- sorry.");
  </method>

  <view x="5" y="5">
    <text valign="middle">Request URL:</text>
    <edittext width="300" id="srcTxt" text="$once{canvas.datasets.testds.src}"/>
    <button text="Start Request">
      <method event="onclick">
canvas.reqTime = getTimer();
        var d = canvas.datasets.testds;
        if (srcTxt.text) {
          Debug.write((new Date())+": Setting URL to '"+srcTxt.text+"'...");
          d.setAttribute('src', srcTxt.text);
          Debug.write((new Date())+": value set.");
        }
        Debug.write((new Date())+": Sending request to "+d.src+"...");
        d.doRequest();
      </method>
    </button>
    <simplelayout axis="x"/>
  </view>
</canvas>
===============================================================


 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Amy Muntz - 09/Aug/07 08:27 PM
Fixing anonymous changes.

André Bargull - 20/Mar/08 01:23 PM
Not Laszlo, also see this blog-entry ("http://www.blog.lessrain.com/?p=276") and this knowledge base article ("http://support.microsoft.com/default.aspx?scid=kb;en-us;272359").


André Bargull - 10/Apr/08 11:21 AM
Not Laszlo as per discussion on LPP-5742.

Mamye Kratt - 11/Apr/08 11:48 AM
Not Laszlo