当前位置:首页>开发>正文

如何在node.js搭建服务器 nodejs怎样向tomcat服务器提交ajax请求

2023-04-19 14:40:23 互联网 未知 开发

 如何在node.js搭建服务器 nodejs怎样向tomcat服务器提交ajax请求

如何在node.js搭建服务器

准备
首先,需要安装nodejs,这个可以去官网下载,目前我本地安装的v0.12版本。

安装完成后可以通过命令行测试安装是否成功,输入:node -v,应该会显示当前安装node版本号。
本文中用到的模块,都是nodejs核心模块,不需要从外部下载,如果有需要,可以使用以下命令安装:npm install xxx。
开始
下一步,新建js文件,可以命名为server.js,代码如下:
var http = require(http)
var url = require(url)
var path = require(path)
var fs = require(fs)

var dir, arg = process.argv[2] || // 命令行第三个参数,用来接收目录,可为空,相对当前server.js文件的目录名称
// 比如使用命令 node server debug,意思就是debug文件夹与server.js文件同级
// 且你想以debug文件夹启动web服务

http.createServer(function (req, res) {
var pathname = __dirname url.parse(req.url).pathname
dir = dir ? dir : pathname // 记住dir(目录)
pathname = dir ? pathname.replace(dir, dir arg /) : pathname // 替换文件静态路径
if (path.extname(pathname) == "") {
pathname = "/"
}
if (pathname.charAt(pathname.length - 1) == "/") {
pathname = "index.html" // 入口文件,此处默认index.html
}

fs.exists(pathname, function (exists) {
if (exists) {
switch (path.extname(pathname)) {
case ".html":
res.writeHead(200, {"Content-Type": "text/html"})
break
case ".js":
res.writeHead(200, {"Content-Type": "text/javascript"})
break
case ".css":
res.writeHead(200, {"Content-Type": "text/css"})
break
case ".gif":
res.writeHead(200, {"Content-Type": "image/gif"})
break
case ".jpg":
res.writeHead(200, {"Content-Type": "image/jpeg"})
break
case ".png":
res.writeHead(200, {"Content-Type": "image/png"})
break
default:
res.writeHead(200, {"Content-Type": "application/octet-stream"})
}

// res可以自己添加信息来简单交互 比如可以修改点header信息 或者修改返回的资源数据
fs.readFile(pathname, function (err, data) {
res.end(data)
})
}
else {
res.writeHead(404, {"Content-Type": "text/html"})
res.end("

404 Not Found

")
}
})
}).listen(8085, "127.0.0.5") // 服务器端口

console.log("server running at http://127.0.0.5:8085/")

启动
当node安装完成及上述server.js文件也新建好之后。将其与你要访问的文件夹放在一起,可以放同层或者直接下层。比如,如果你要访问d: estdebug文件夹。

你可以先将当前文件放入同层或者直接下,然后输入如下命令启动web服务:
先打开`cmd`,进入server文件所在目录,比如是`test`目录;
然后输入:`node server debug`(同层), 或者`node server`(子层),
此时会提示`server running at http://127.0.0.5:8085/`, 表示启动服务成功;
最后打开浏览器,进入:`127.0.0.5:8085`,即可访问此资源。

最后
简单解释下上面的代码。
首先最上面的require表示需要用到那几个模块,先引用一下;

arg表示输入的命令行的第三个参数,上面是做了手动截取;

createServer方法表示创建一个http服务,以函数为参数,本文代码中传入了一个匿名函数;

req,表示http request(请求)对象,其携带着来自客户端此次http请求的相关信息,例如请求method、请求query参数、请求header头信息等;
res,表示http response(返回)对象,用来给客户端返回请求资源用,可以手动添加信息,例如返回的数据、返回的头信息等、返回的code等;
fs,表示文件资源对象,具体可以访问nodejs官网的api;
path,表示资源路径对象,具体可以访问nodejs官网的api。
listen表示创建的服务监听,一旦访问了此端口,将进入此前的匿名函数回调中,将资源返回给客户端。

nodejs怎样向tomcat服务器提交ajax请求

如果电脑没有安装nodejs的同学可以先到node官方下载并安装好node程序。 安装好nodejs后验证一下是否安装成功!如果出现则表明node已经承装安装上去了! 安装好node之后打开cmd 输入 npm install anywhere -g 安装anywhere 以上两个步骤都就绪以...

如何用node.js搭建web服务器

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

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

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

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

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

如何用nodejs搭建web服务器

[linux运维]

1、下载最新node.js二进制源码安装包(29MB),V8.2.1更新于2017年7月20日 
wget -c https://nodejs.org/dist/v8.2.1//node-v8.2.1.tar.gz

wget是一个Linux下载文件的工具,centos自带。
wget -c 是断点续传下载方式,后面的URL就是提供下载文件的地址
默认获取的文件地址在/root目录下,命令pwd显示当前目录
2、安装必要的编译软件 吖米
yum install gcc gcc-c

yum = Yellow dog Updater, Modified。改良黄狗更新器,centos自带智能包管理器。

中途询问,输入y:在线下载安装 d:只下载不安装 N:不下载不安装
Is this ok [y/d/N] :y
3、解压源码
tar -zxvf node-v8.2.1.tar.gz
当前目录/root/就会多一个node-v8.2.1的文件夹
-z:透过gzip的支持进行压缩/解压缩:此时文件名最好为*.tar.gz
-x:解压缩的功能
-v:在压缩/解压缩的过程中,将正在处理文件名显示出来
f filename:-f后面要立刻接被处理的文件名
4、编译node源码包
 1)进入到node源码包解压目录
 cd node-v8.2.指定NodeJS安装位置
./configure --prefix=/usr/local/node 
不指定prefix,则可执行文件默认放在/usr /local/bin,
库文件默认放在/usr/local/lib,
配置文件默认放在/usr/local/etc。
其它的资源文件放在/usr /local/share。
你要卸载这个程序,要么在原来的make目录下用一次make uninstall(前提是make文件指定过uninstall),
要么去上述目录里面把相关的文件一个个手工删掉。

执行安装文件,足足等了40多分钟
make && make install
4、添加环境变量
> 创建并打开新文件 不存在node.sh文件

[root@localhost node-v8.1.3]# vim /etc/profile.d/node.sh

> 输入node安装位置的bin目录所在位置

export PATH=$PATH:/usr/local/node/bin
ESC 输入:wq

提示: 命令输入错了vim
-bash: rt: command not found
-bash: vim: command not found
[解决]
i. 那么如何安装 vim 呢?
输入rpm -qa|grep vim 命令, 如果 vim 已经正确安装,会返回下面的三行代码:
root@server1 [~]# rpm -qa|grep vim
vim-enhanced-7.0.109-7.elvim-minimal-7.0.109-7.elvim-common-7.0.109-7.el
如果少了其中的某一条,比如 vim-enhanced 的,就用命令 yum -y install vim-enhanced 来安装:
yum -y install vim-enhanced

如果上面的三条一条都没有返回, 可以直接用 yum -y install vim* 命令
yum -y install vim*

使用su root

source /etc/profile.d/node.sh =. /etc/profile.d/node.sh

[不间断运行nodejs服务]
https://yq.aliyun.com/ziliao/341
npm install forever -g

forever start app.js

node.js怎么在linux上搭建服务器

加入 主文件是 index.js 那么可以用的方法有: 1.用forever 进行管理 npm install -g foreverforever start index.js 2. 用自带的服务nohub nohup node index.js > myLog.log 2>&1 &

最新文章

随便看看