之前一直用的Java,现在开始学习Nodejs,作为学习成果进行记录总结。
在Node环境安装好后,首先学习如何写一个服务器程序,代码如下(NodeStudy_1.js):
var http = require('http'); http.createServer(function (request, response) { response.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'}); console.log('访问'); response.write('hello,world'); response.end(' end');//不写则没有http协议尾,但写了会产生两次访问 }).listen(8000); console.log('Server running at http://127.0.0.1:8000/');在文件所在目录运行:
D:\zhanglei\Study>node NodeStudy_1.js
Server running at http://127.0.0.1:8000/
在浏览器中输入:http://localhost:8000/
会出现如下:
hello,world end
注意程序中有注释的一行
response.end(' end');如果不加该行,浏览器会一直转圈、加载;加了会产生两次访问(有的浏览器只有一次,如火狐),如下:
D:\zhanglei\Study>node NodeStudy_1.js
Server running at http://127.0.0.1:8000/
访问
访问
第一次访问获取的是hello,world,第二次是由于浏览器获取favicon.ico导致,所以正确的写法如下:
var http = require('http'); http.createServer(function (request, response) { response.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'}); if(request.url!=="/favicon.ico"){ //清除第2此访问 console.log('访问'); response.write('hello,world'); response.end('hell,世界');//不写则没有http协议尾,但写了会产生两次访问 } }).listen(8000); console.log('Server running at http://127.0.0.1:8000/');