зеркало из https://github.com/mozilla/pjs.git
136 строки
4.1 KiB
HTML
136 строки
4.1 KiB
HTML
<!-- ***** BEGIN LICENSE BLOCK *****
|
|
- Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
|
-
|
|
- The contents of this file are subject to the Mozilla Public License Version
|
|
- 1.1 (the "License"); you may not use this file except in compliance with
|
|
- the License. You may obtain a copy of the License at
|
|
- http://www.mozilla.org/MPL/
|
|
-
|
|
- Software distributed under the License is distributed on an "AS IS" basis,
|
|
- WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
|
- for the specific language governing rights and limitations under the
|
|
- License.
|
|
-
|
|
- The Original Code is Mozilla Test Cases.
|
|
-
|
|
- The Initial Developer of the Original Code is
|
|
- Netscape Communications Corp.
|
|
- Portions created by the Initial Developer are Copyright (C) 2001
|
|
- the Initial Developer. All Rights Reserved.
|
|
-
|
|
- Contributor(s):
|
|
-
|
|
- Alternatively, the contents of this file may be used under the terms of
|
|
- either the GNU General Public License Version 2 or later (the "GPL"), or
|
|
- the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
|
- in which case the provisions of the GPL or the LGPL are applicable instead
|
|
- of those above. If you wish to allow use of your version of this file only
|
|
- under the terms of either the GPL or the LGPL, and not to allow others to
|
|
- use your version of this file under the terms of the MPL, indicate your
|
|
- decision by deleting the provisions above and replace them with the notice
|
|
- and other provisions required by the GPL or the LGPL. If you do not delete
|
|
- the provisions above, a recipient may use your version of this file under
|
|
- the terms of any one of the MPL, the GPL or the LGPL.
|
|
-
|
|
- ***** END LICENSE BLOCK ***** -->
|
|
<html>
|
|
<head><title>Asynchronous GET test</title>
|
|
<style type="text/css">
|
|
.box {
|
|
display: box;
|
|
border: 1px solid black;
|
|
margin-bottom: 0.5em;
|
|
}
|
|
.boxheader {
|
|
font-weight: bold;
|
|
color: maroon;
|
|
}
|
|
pre {
|
|
margin-left: 2em;
|
|
}
|
|
</style>
|
|
<script type="text/javascript">
|
|
var p;
|
|
try {
|
|
p = new XMLHttpRequest();
|
|
} catch (e) {
|
|
p = new ActiveXObject("Msxml2.XMLHTTP");
|
|
}
|
|
|
|
var interactiveCount = 0;
|
|
|
|
function myfunc()
|
|
{
|
|
if (p.readyState == 3) {
|
|
interactiveCount++;
|
|
}
|
|
if (p.readyState != 4)
|
|
return;
|
|
|
|
document.getElementById("id1").firstChild.nodeValue = p.responseText;
|
|
if (p.responseXML) {
|
|
var str;
|
|
try {
|
|
var s = new XMLSerializer();
|
|
var d = p.responseXML;
|
|
str = s.serializeToString(d);
|
|
} catch (e) {
|
|
str = "@@TODO@@";
|
|
}
|
|
document.getElementById("id2").firstChild.nodeValue = str;
|
|
}
|
|
document.getElementById("id3").firstChild.nodeValue = p.getAllResponseHeaders();
|
|
document.getElementById("id4").firstChild.nodeValue = p.status;
|
|
document.getElementById("id5").firstChild.nodeValue = p.statusText;
|
|
document.getElementById("id6").firstChild.nodeValue = p.readyState;
|
|
document.getElementById("id7").firstChild.nodeValue = interactiveCount;
|
|
}
|
|
|
|
// p.onload would also work in Mozilla
|
|
p.onreadystatechange = myfunc;
|
|
|
|
try {
|
|
// Needed for Mozilla if local file tries to access an http URL
|
|
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
|
|
} catch (e) {
|
|
// ignore
|
|
}
|
|
|
|
p.open("GET", "invalid.xml");
|
|
|
|
function aLittleDelay()
|
|
{
|
|
p.send(null);
|
|
}
|
|
|
|
setTimeout(aLittleDelay,0);
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<h1>Asynchronous GET test</h1>
|
|
|
|
<div class="box"><span class="boxheader">responseText</span>
|
|
<pre id="id1">@@No result@@</pre>
|
|
</div>
|
|
<div class="box"><span class="boxheader">responseXML serialized</span>
|
|
<pre id="id2">@@No result@@</pre>
|
|
</div>
|
|
<div class="box"><span class="boxheader">getAllResponseHeaders()</span>
|
|
<pre id="id3">@@No result@@</pre>
|
|
</div>
|
|
<div class="box"><span class="boxheader">status</span>
|
|
<pre id="id4">@@No result@@</pre>
|
|
</div>
|
|
<div class="box"><span class="boxheader">statusText</span>
|
|
<pre id="id5">@@No result@@</pre>
|
|
</div>
|
|
<div class="box"><span class="boxheader">readyState</span>
|
|
<pre id="id6">@@No result@@</pre>
|
|
</div>
|
|
<div class="box"><span class="boxheader"># of times onreadystatechanged handler called with INTERACTIVE status</span>
|
|
<pre id="id7">@@No result@@</pre>
|
|
</div>
|
|
|
|
</body>
|
|
</html>
|