
| Key: |
LPP-1156
|
| Type: |
Bug
|
| Status: |
Closed
|
| Resolution: |
Not Laszlo
|
| Priority: |
P2
|
| Assignee: |
Unassigned
|
| Reporter: |
Cameron Brown
|
| Votes: |
0
|
| Watchers: |
2
|
|
If you were logged in you would be able to see more operations.
|
|
|
|
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
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
|
|
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>
===============================================================
|
|
Description
|
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>
===============================================================
|
Show » |
|