refactor xhr
This commit is contained in:
parent
943c971654
commit
00b356ccf8
4 changed files with 291 additions and 275 deletions
30
7-network/1-xmlhttprequest/example.view/index.html
Normal file
30
7-network/1-xmlhttprequest/example.view/index.html
Normal file
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE HTML>
|
||||
<script>
|
||||
function run() {
|
||||
|
||||
let xhr = new XMLHttpRequest();
|
||||
write(`readyState=${xhr.readyState}`);
|
||||
|
||||
xhr.open('GET', 'digits');
|
||||
write(`readyState=${xhr.readyState}`);
|
||||
|
||||
xhr.onreadystatechange = function() {
|
||||
write(`readyState=${xhr.readyState}, responseText.length=${xhr.responseText.length}`);
|
||||
};
|
||||
|
||||
xhr.onprogress = function() {
|
||||
write(`readyState=${xhr.readyState}, responseText.length=${xhr.responseText.length}`);
|
||||
};
|
||||
|
||||
xhr.send();
|
||||
}
|
||||
|
||||
function write(text) {
|
||||
let li = log.appendChild(document.createElement('li'));
|
||||
li.innerHTML = text;
|
||||
}
|
||||
</script>
|
||||
|
||||
<button onclick="run()">Load digits</button>
|
||||
|
||||
<ul id="log"></ul>
|
44
7-network/1-xmlhttprequest/example.view/server.js
Normal file
44
7-network/1-xmlhttprequest/example.view/server.js
Normal file
|
@ -0,0 +1,44 @@
|
|||
let http = require('http');
|
||||
let url = require('url');
|
||||
let querystring = require('querystring');
|
||||
let static = require('node-static');
|
||||
let file = new static.Server('.');
|
||||
|
||||
function accept(req, res) {
|
||||
|
||||
if (req.url == '/load') {
|
||||
|
||||
res.writeHead(200, {
|
||||
'Content-Type': 'text/plain',
|
||||
'Cache-Control': 'no-cache',
|
||||
'Content-Length': 90000
|
||||
});
|
||||
|
||||
let i = 0;
|
||||
|
||||
let timer = setInterval(write, 1000);
|
||||
write();
|
||||
|
||||
function write() {
|
||||
res.write(String(i).repeat(10000));
|
||||
i++;
|
||||
if (i == 9) {
|
||||
clearInterval(timer);
|
||||
res.end();
|
||||
}
|
||||
|
||||
}
|
||||
} else {
|
||||
file.serve(req, res);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
// ----- запуск accept как сервера из консоли или как модуля ------
|
||||
|
||||
if (!module.parent) {
|
||||
http.createServer(accept).listen(8080);
|
||||
} else {
|
||||
exports.accept = accept;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue