源码地址:https://github.com/chunsenye/...第一步:创建并访问创建服务器server.jsvarhttp://localhost:8090/可以访问http://localhost:8090/=require('http')varserver=http.createServer(function(request,response){console.log('有人访问了我的第一个节点服务器!');})server.listen(8090,function(){console.log('serverstartedathttp://localhost:8090......')});代码解释:1.首先要依赖http,安装node后没有npm就可以使用,直接依赖即可2.然后使用http.createServer(callback)方法创建未启动的server3.最后,启动一个监听8090端口的服务器操作:1.进入server.js所在文件夹2.进入nodeserver.js运行js文件3.访问http://localhost:8090/可以访问服务器,但目前还没有回应。所以左上角一直在转,显示正在等待localhost响应。再看服务器:访问一次就会多输出一句信息。第二步:让服务器响应访问server.jsvarhttp=require('http')varserver=http.createServer(function(request,response){console.log('有人访问了我的第一个节点服务器!');response.write('欢迎访问我的第一个节点服务器!');response.end();})server.listen(8090,function(){console.log('服务器启动于http://localhost:8090......')});还有两行代码:response.write('welcometovisitedtovisitedmyfirstnodeserver!');//response就是响应response.write()可以理解为在响应中写入内容response.end();//必须结束最后的结果是这样的第三步:根据访问链接判断响应内容varhttp=require('http')varserver=http.createServer(function(request,response){console.log('有人访问了我的第一个节点服务器!');if(request.url==='/'){response.write('HomePage');}elseif(request.url==='/login'){response.write('登录页面');}elseif(request.url==='/register'){response.write('注册页面');}else{response.write(request.url);}response.end();})server.listen(8090,function(){console.log('serverstartedathttp://localhost:8090......')});代码解释:request.url的值其实是http://localhost:8090后面的内容默认是/,就是首页,如果是/login就是登录页面,如果是/register,表示注册页面,否则直接响应链接。这里只是响应一串串的字符串,怎么响应一个页面呢?第四步:响应HTML页面server.jsvarhttp=require('http');//导入jsvar读写文件fs=require('fs');varserver=http.createServer(function(request,response){console.log('有人访问了我的第一个节点服务器!');//根据访问路径选择响应文件letfilePath;if(request.url==='/'){filePath='index.html';}elseif(request.url==='/login'){filePath='login.html';}elseif(request.url==='/register'){filePath='register.html';}else{filePath='notfound.html';}//读取文件并写入响应内容fs.readFile(filePath,function(err,data){response.write(''+data);//不能直接写data是16进制数,需要转成字符串//我写data的时候会报错data.toString()response.end();})})server.listen(8090,function(){console.log('服务器启动于http://localhost:8090......')});通过上面的代码,可以根据不同的路径响应不同的文件。项目文件目录执行效果至此,一个简单的可以响应文件的服务器已经初步完成,但是还是不能响应图片,我也加载不了js文件和css文件。GitHub已上线,欢迎访问https://github.com/chunsenye/...
