编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

node.js搭配express开发一个自己的服务器

wxchong 2024-10-22 17:54:37 开源技术 6 ℃ 0 评论

Node.js,它是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行的数据密集型的实时应用。

它可以很方便的实现我们平时移动应用的数据格式,JSON数据,具体实现方法是通过express的框架来实现RESTful API,这里就不对RESTful API做解释了,我们目前的服务器使用的是spring+hibernate+Struts+MySQL,然后显示数据都是使用Jsonobject来生成的,不过最近也需要升级,改变成Spring MVC来实现RESTful API。好了,这里就不说那么远了。我们这里使用EXPRESS框架来实现,首先下载node.js,它有几个版本,windows、mac、Linux可以运行在各种操作系统上,我这里是使用MAC安装的,直接点击就可以了。

一、Node

1、下载安装Node

下载地址:

https://nodejs.org/en/

2、验证安装是否成功。

node -v

3、搭建一个node.js的服务器。

新建一个项目文件夹,然后创建一个app.js,这个就是用来做服务器的JS。它可以用来监听某一个端口的各种请求,代码如下:

/**

* Created by leeming on 16/3/19.

*/

var http = require('http');

http.createServer(function (request, response) {

// 发送 HTTP 头部

// HTTP 状态值: 200 : OK

// 内容类型: text/plain

response.writeHead(200, {'Content-Type': 'text/plain'});

// 发送响应数据 "Hello Yeehot"

response.end('Hello Yeehot\n');

}).listen(8888);

// 终端打印如下信息

console.log('Server running at http://127.0.0.1:8888/');

注:这里的 require('http');是加载了网络模块,Node是由各种模块堆砌而成,有点像我们以前加载PHP的服务器,也是要加载各种的模块。

http.createServer表示创建了服务器,其实就是我们平时创建SOCKET的服务。

.listen(8888)表示监听了8888端口。

在浏览器输入

http://127.0.0.1:8888/

这个时候回显示Hello Yeehot

二、Express

Express,是目前比较多人在Node服务器上使用的框架。

1、进入到刚才的项目目录,比如是nodejs目录

cd /Users/leeming/Desktop/nodejs

2、查看express的版本号,输入如下的指令:

npm info express version

我这里是4.13.4

3、安装express,

在刚才的目录下创建一个package.json文件,然后输入如下代码,express后面是刚才查看的版本号,然后输入npm install


{

"name": "Yeehot",

"description": "hello world test app",

"version": "0.0.1",

"private": true,

"dependencies": {

"express": "4.13.4"

}

}

4、查看安装情况,大家这个时候可以在目录下看到node_modules,这个就是我们到时可以使用的模块。这里还有一个更加方便的安装方法就是,直接新建一个目录,然后在终端输入npm install express。就可以安装express了。NPM的安装方法超级简单。

5、创建服务器的JS

新建一个app.js,使用express框架,我这里是读取本地的json数据,真正开发的时候都是从数据库获取的了。代码如下

var express = require('express');

var app = express();

var fs = require("fs");

app.get('/list', function (req, res) {

fs.readFile( __dirname + "/" + "package.json", 'utf8', function (err, data) {

console.log( data );

res.end( data );

});

})

var server = app.listen(8081, function () {

var host = server.address().address

var port = server.address().port

console.log("应用实例,访问地址为 http://%s:%s", host, port)

})

运行服务器,输入如下指令

node app.js

在浏览器查看数据

http://127.0.0.1:8081/list

这个时候回显示package.json里面的json数据,如下所示

{

"name": "Yeehot",

"description": "hello world test app",

"version": "0.0.1",

"private": true,

"dependencies": {

"express": "4.3.8"

}

}

今天就说到这里了,欢迎关注我的头条号:一点热。随时把以前所学的知识写给大家。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表