Noriu paleisti labai paprastą HTTP serverį. Kiekviena GET užklausa į example.com
turi būti pateikta kaip įprastas HTML puslapis (t. y. tokia pati patirtis, kaip skaitant įprastus tinklalapius).
Naudodamas toliau pateiktą kodą, galiu perskaityti index.html
turinį. Kaip pateikti index.html
kaip įprastą tinklalapį?
var http = require('http');
var fs = require('fs');
var index = fs.readFileSync('index.html');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end(index);
}).listen(9615);
Vienas iš toliau pateiktų pasiūlymų yra sudėtingas ir reikalauja, kad kiekvienam norimam naudoti išteklių (CSS, "JavaScript", paveikslėlių) failui parašyčiau get
eilutę.
Kaip galėčiau pateikti vieną HTML puslapį su keliais paveikslėliais, CSS ir "JavaScript"?
Manau, kad užuot naudojus perjungimo komandą, patogiau turinio tipą ieškoti žodyne:
var contentTypesByExtension = {
'html': "text/html",
'js': "text/javascript"
};
...
var contentType = contentTypesByExtension[fileExtension] || 'text/plain';
Node.js pavyzdinė programa Node Chat turi norimą funkcionalumą.
Jos README.textfile
3. Žingsnis yra tai, ko ieškote.
žingsnis1
- sukurkite serverį, kuris 8002 prievado adresu atsakytų "hello world
žingsnis2
- sukurti index.html ir jį pateikti
žingsnis3
- įveskite util.js
- pakeiskite logiką taip, kad būtų pateikiamas bet koks statinis failas
- rodyti 404, jei nerandama jokio failo
žingsnis4
- pridėti jquery-1.4.2.js
- pridėti client.js
- pakeiskite index.html, kad vartotojas būtų paprašytas nurodyti slapyvardį
Čia yra server.js
Čia yra util.js