Page Menu
Home
Code
Search
Configure Global Search
Log In
Files
F885205
scriptTimeout.html
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
2 KB
Subscribers
None
scriptTimeout.html
View Options
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<
html
>
<
head
>
<
title
>
Testing dojo.io.script
</
title
>
<
style
type
=
"text/css"
>
@
import
"../../resources/dojo.css"
;
</
style
>
<
script
type
=
"text/javascript"
src
=
"../../dojo.js"
djConfig
=
"isDebug: true"
></
script
>
<
script
type
=
"text/javascript"
>
dojo
.
require
(
"dojo.io.script"
);
function
startTest
(){
var
td
=
dojo
.
io
.
script
.
get
({
url
:
"../_base/timeout.php"
,
callbackParamName
:
"callback"
,
content
:
{
Foo
:
'Bar'
},
timeout
:
500
,
handleAs
:
"json"
,
preventCache
:
true
,
handle
:
function
(
response
,
ioArgs
){
if
(
response
instanceof
Error
&&
response
.
dojoType
==
"timeout"
){
console
.
debug
(
"TEST OK. No errors should be seen after this timeout error."
);
}
else
{
console
.
debug
(
"TEST FAILED: some other error or response received: "
,
response
);
}
}
});
}
</
script
>
</
head
>
<
body
>
<
h1
>
Timeout test
</
h1
>
<
p
>
This test page tests the timeout functionality of dojo.io.script, and to make
sure that requests that time out get removed quickly. If the server response
is received after the script has been timed out, there should not be weird
errors as the browser tries to evaluate the responses after the desired time
period.
</
p
>
<
p
>
This test requires a server running PHP to work.
</
p
>
<
p
>
<
p
><
strong
>
Firefox Oddity:
</
strong
>
Firefox
will print an error after the script response is received from the server:
<
br
/>
<
span
style
=
"color: red"
>
dojo.io.script.jsonp_dojoIoScript1 has no properties
</
span
>
This is bad because Firefox goes ahead and evaluates the script contents in the page's
JavaScript space (this happens even when I turn off Firefox Add-Ons). All other browsers
do not evaluate the script (given the weird Opera 9.22 behavior below). You can test this
by clicking the
<
b
>
Test for SuperXFooBarVariable
</
b
>
button after receiving the response
for timeout.php (check Firebug Net tab to see when request is received). All other browsers
show an error or show the "undefined" value for SuperXFooBarVariable, but Firefox will show its
value as being: "Oh no! SuperXFooBarVariable is defined (should not be for timeout case)".
<
p
><
strong
>
Opera Oddity:
</
strong
>
Opera 9.22 does not seem to trigger the timeout case,
but rather it waits for the server to send a response to the script before continuing past the
point where the script is added to the DOM? That seems wrong. Dynamic script tags are no longer
an async operation?
</
p
>
<
button
onclick
=
"startTest()"
>
Start Test
</
button
>
<
button
onclick
=
"alert(SuperXFooBarVariable)"
>
Test for SuperXFooBarVariable
</
button
>
</
body
>
</
html
>
File Metadata
Details
Attached
Mime Type
text/html
Expires
Sun, Apr 6, 13:55 (2 w, 1 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
25746
Default Alt Text
scriptTimeout.html (2 KB)
Attached To
rZED Zed
Event Timeline
Log In to Comment