node.js是类似于tomcat的服务器吗?

node.js是类似于tomcat的服务器吗?,第1张

两者相比的话,应该差不多是javascript语言对应java语言,v8对应hotspot vm,nodejs对应Java Class Library+tomcat/java ee,只是大概的对应,不能完全对上。

1Nodejs安装包及源码下载地址为:https://nodejsorg/en/download/

Git下载地址为:https://git-scmcom/download/win。

2按照安装提示操作即可,选择安装路径、npm。

3环境变量默认C:\Users\Administrator\AppData\Roaming\npm\node_modules。

创建新的变量

创建方法:我的电脑>属性》高级系统设置》环境变量》,创建名NODE_PATH,值为nodejs的当前安装目录。

命令行工具是运行在当前计算机用户下的,所以开头总是C:/Users/XXX/Desktop>,而不会跟你的nodejs安装的位置有关。

安装node后,在cmd里有两种模式,开发模式和命令行模式,要进入开发模式直接输入node回车即可,此时可以输入代码,比如require ("express"),如果直接在命令行模式下输入require类的语句是会报错的,提示'require'不是内部或外部命令,也不是可运行的程序或批处理文件。从开发模式退出可用exit命令也可以用快捷捷,ctrl+D或两次ctrl+C

4创建应用

我们先创建一个项目目录,目录可自己定义,本案例的目录为 e:/node/serve。

由于我们要搭建的是服务器,所以我把第一个文件命名为serverjs。

在serverjs里面输入以下代码:

const http = require('http');//实例化“http”

const hostname = '127001';

const port = 3000;

const server = httpcreateServer((req, res) => {

resstatusCode = 200; //状态值200:OK

ressetHeader('Content-Type', 'text/plain'); //内容类型:text/plain

resend('Hello World\n'); //响应结果“hello world”

});

serverlisten(port, hostname, () => {  //实现监听

consolelog(`Server running at http://${hostname}:${port}/`);

});

5应用执行

打开git命令行,输入cd e:/node/serve/

之后输入node servicejs

您好 很高兴为您解答:

这个web服务器包括三块,appjs是程序入口,负责响应url请求;routejs是路由,用来分发处理复杂的业务逻辑;systemjs是配置文件,用来配置服务器参数,如host、port等

首先来看appjs,引用模块,http处理url请求,url用来解析请求参数和路径,path只是用来匹配路径的扩展名o(╯□╰)o,fs用来读取本地静态文件,剩下两个模块后面详解。

接下来正式创建服务器处理请求,请求大致分两类,一类是静态文件,如xxxhtml、xxxjs等等,另一类是进行业务处理,如常见的增删查改操作,这一部分操作交给路由处理,这里用了一个简单的判断逻辑:通过后缀名,后缀名在systemjs中配置。

读取本地文件的时候要注意一点,那就是缓存。如果客户端发出重复请求,服务器需要判断文件自上次请求后是否发生了修改,如果未修改返回304,这样可以加快浏览器端的响应速度。这里的判断方式是通过判断请求的header的if-modified-since时间和本地文件修改时间是否一致,如果一致则返回304,否则重置该时间,第一张图是代码,第二张图是通过chrome调试工具看到的请求头部时间。

如果需要进行业务处理,则交给路由处理了。首先路由引入具体的业务逻辑模块,然后通过解析具体的路径名来执行具体的业务逻辑,这里注意的是:由于nodejs的并发特性,记得传入回调函数来获得相应的处理结果。

望采纳 谢谢

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » node.js是类似于tomcat的服务器吗?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情