nodejs安装与概述
第一部分:安装与测试
1 官方下载地址 https://nodejs.org/en/
2 测试是否安装成功?
window下打开CMD窗口
输入:node -v => 显示安装的nodejs版本号
第二部分:创建小程序
一、使用Node创建一个简单HTTP服务器,代码及操作流程如下
1、新建一个js文件。例如:d:/node/server.js,并输入以下代码:
1 var http = require('http'); 2 var server = http.createServer(function(req,res){ 3 res.write("Hello"); 4 res.end("world"); 5 }).listen(8080); 6 console.log("Please Open http://lcoalhost:8080");
2、打开cmd窗口:
输入 node serve.js =>显示:Please Open http://localhost:8080 ,说明已创建成功;
浏览器地址栏输入并打开 http://localhost:8080 就可以在网页上看到 Hello World 。
3、代码解释:
1)、var http = require('http');
意思是引入 HTTP模块。
node本身我们可以认为是个框架,自带了一些常用模块,如果需要更多模块可以使用npm进行安装。
2)、http模块引入后可以通过createServer方法创建一个服务
createServer方法可以有一个回调函数。
系统会自动传递两个对象,request对象与response对象。
3)、res.write([data]]) 向浏览器输出内容
4)、res.end([data]) 代表响应终止,必须有,同时可以发送一个数据到浏览器。
5)、console.log("Please Open http://lcoalhost:8080");
是在服务器端命令行窗口输出一行文本。
第三部分:实现原生get请求
注:nodejs的请求方式,较PHP复杂,需要手写
代码如下:假设请求url是http://localhost:8080/index.html?id=5&page=3 , 新建server.js内容如下:
1 var http = require('http'); 2 var urls = require('url'); 3 var server = http.createServer(callBack); 4 server.listen(8080); 5 console.log("Please Open http://lcoalhost:8080"); 6 //回调函数 7 function callBack(req,res){ 8 if(req.url!= "/favicon.ico"){ 9 var url = urls.parse(req.url) 10 var query = urls.parse(req.url,true).query; 11 res.write(url.search + "\n"); //获取?id=5&page=3 12 res.write(url.query + "\n"); //获取id=3&page=5 13 res.write("id: " + query.id + " page: "+ query.page); //结果3 14 res.end("\n Hello World"); 15 } 16 }
详情参考:http://nodejs.cn/api/url.html
第四部分:node显示html文档
1、新建html 文档,代码如下:
1 <form action="http://localhost:8080"> 2 <input type="text" name="search" /> 3 <br> 4 <input type="submit" value="确定搜索" /> 5 </form>
2、新建一个server.js内容如下:
1 var http = require('http'); 2 var urls = require('url'); 3 var server = http.createServer(callBack); 4 server.listen(8080); 5 console.log("Please Open http://lcoalhost:8080"); 6 7 //回调函数 8 function callBack(req,res){ 9 if(req.url!= "/favicon.ico"){ 10 var url = urls.parse(req.url) 11 var query = urls.parse(req.url,true).query; 12 if(url.pathname=="/index"){ 13 res.end(tpl); 14 } 15 if(query.search){ 16 res.end(query.search); 17 }else{ 18 res.end("搜索内容为空"); 19 } 20 res.end(); 21 } 22 } 23 24 //加载html页面 25 var tpl = ""; 26 var fs = require('fs'); 27 fs.readFile('index.html','utf-8',fsCallBack); 28 function fsCallBack(err,data){ 29 if(err) 30 console.log(err); 31 else 32 tpl = data; 33 console.log(data); 34 }
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步