1.环境条件准备:

  A.确定node已经创建

  B.npm或cnpm已经下载,npm和cnpm其实是一个道理

  C.mysql或者使用其他数据库已经安装(本例使用mysql)

2.开始创建,首先新建一个文件夹,假设名字为serv

3.打开对应路径的cmd,并输入npm init -y( “-y” 表示默认按下enter键,如果不写也行,只是 “package.json” 的配置变成手动配置)初始化package.json

这时候serv文件夹下会生成一个package.json文件

4.安装mysql依赖,即输入npm install mysql --save,它会自己创立node_modules文件夹以及相关依赖(mysql只是一个例子,可以安装别的依赖,同样可以创立node_modules文件夹以及相关依赖),一个package-lock.json文件

同样的依赖下载:包含node中间件框架connect(或express等其他相关依赖)创建连接,body-parser(body解析),mysql,util(url.parse 方法来解析 URL 中的参数)等等,其中,由于node版本不一致,所以可能需要的依赖不仅仅是如此(当前node版本10.16.0);

5.在serv文件夹下创立一个js文件,名字可以随便取,不过最好以server为命名参照基础,当前示例文件为server.js,代码示例如下:

var connect = require('connect'); //创建连接
var bodyParser = require('body-parser'); //body解析
var util = require('util'); //url.parse 方法来解析 URL 中的参数
var mysql = require('mysql'); //mysql
var connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '',
database: 'glass_min'
}); var app = connect();
app.use(bodyParser.json()) //JSON解析
.use(bodyParser.urlencoded({
extended: true
}))
//use()方法还有一个可选的路径字符串,对传入请求的URL的开始匹配。
//use方法来维护一个中间件队列
.use(function(req, res, next) {
//跨域处理
// Website you wish to allow to connect
res.setHeader('Access-Control-Allow-Origin', '*'); //允许任何源
// Request methods you wish to allow
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE'); //允许任何方法
// Request headers you wish to allow
res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type,X-Session-Token'); //允许任何类型
res.writeHead(, {
"Content-Type": "text/plain;charset=utf-8"
}); //utf-8转码
next(); //next 方法就是一个递归调用
})
//通用通用设备列表
.use('/v1/cnc/common/mac_list', function(req, res, next) {
console.log("[通用设备列表]:");
console.log(req.body);
var result = {
"code": ,
"msg": "success",
"data": []
}
var sql = 'SELECT code,id,name FROM `equlistComm` WHERE id = "aaf6387e-9607-41ff-b2b4-93b35fcbc795"';
conQueryData(sql, result, res, next());
})
.listen();
console.log('Server started on port 3001.'); /**
* sql操作
* @param {String} sql
*/
function conQueryData(sql, result, res, fun) {
connection.query(sql, function(error, results, fields) {
if(error) throw error;
result.data = results;
res.end(JSON.stringify(result));
fun;
});
}

6.在cmd上运行node+文件全称,当前示例为:node server.js

关于创建node服务的更多相关文章

  1. node服务端渲染(完整demo)

    简介 nodejs搭建多页面服务端渲染 技术点 koa 搭建服务 koa-router 创建页面路由 nunjucks 模板引擎组合html webpack打包多页面 node端异步请求 服务端日志打 ...

  2. node.js 创建 wss服务

    var https=require('https'); var ws=require('ws'); var fs=require('fs'); var keypath=process.cwd()+'/ ...

  3. node服务的监控预警系统架构

    需求背景 目前node端的服务逐渐成熟,在不少公司内部也开始承担业务处理或者视图渲染工作.不同于个人开发的简单服务器,企业级的node服务要求更为苛刻: 高稳定性.高可靠性.鲁棒性以及直观的监控和报警 ...

  4. 添加swagger api文档到node服务

    swagger,一款api测试工具,详细介绍参考官网:http://swagger.io/ ,这里主要记录下怎么将swagger api应用到我们的node服务中: 1.任意新建node api项目, ...

  5. node服务的安装以及vue的安装

    相信很多朋友都在装node服务和安装vue的时候会遇到一些问题,下面为大家详细介绍node服务的安装以及vue的安装: 1.nodeJs官网下载版本(根据自己电脑的配置进行相应下载即可):默认安装路径 ...

  6. node服务端搭建学习笔记

    咳咳,终于迈出这一步了...这篇文章将是边学边写的真正笔记...用于mark下学习过程中的点滴~ 开篇先把我学习参考的文章来源给出,以表示对前人的尊敬: https://github.com/nswb ...

  7. 使用electron开发一个h5的客户端应用创建http服务模拟后台接口mock

    使用electron开发一个h5的客户端应用创建http服务模拟后端接口mock 在上一篇<electron快速开始>里讲述了如何快速的开始一个electron的应用程序,既然electr ...

  8. Node服务端极速搭建 - nvmhome

    本文意在让你掌握极速搭建Node服务端(任何Project) $ whoami name: kelvin email: kelvv@outlook.com homepage: www.kelvv.co ...

  9. Node服务端极速搭建 -- nvmhome

    > 本文意在让你掌握极速搭建Node服务端(任何Project) ```$ whoaminame: kelvinemail: kelvv@outlook.comhomepage: www.kel ...

随机推荐

  1. QT QNetworkAccessManager 如何支持RESTFul的HTTP Patch方法

    HTTP Patch方法是除了post,get,put,delete之外的一个新方式, 网上查不到的,也算是独家吧: 主要用下面这个方法: QNetworkReply *sendCustomReque ...

  2. Flutter 你需要知道的那些事 01

    公众号「AndroidTraveler」首发. 1. width 属性 对于设置控件宽度填充父控件这件事情,在 Android 里面,只需要设置 MATCH_PARENT 即可. 但是在 Flutte ...

  3. SQL学习_WHERE 数据过滤

    1.比较运算符 SQL:SELECT name, hp_max FROM heros WHERE hp_max > 6000 SQL:SELECT name, hp_max FROM heros ...

  4. MySQL 部署分布式架构 MyCAT (一)

    架构 环境 主机名 IP db1 192.168.31.205 db2 192.168.31.206 前期准备 开启防火墙,安装配置 mysql (db1,db2) firewall-cmd --pe ...

  5. 学习:SpringCloud(一)

    微服务: 微服务是一种架构模式或者一种架构风格,提倡将单一应用程序划分成一组小的服务==独立部署==,服务之间相互配合.相互协调,每个服务运行于自己的==进程==中. 服务与服务间采用轻量级通讯,如H ...

  6. CMD控制台如何把XXX.sql导入到数据库

    mysql -u root -proot <"F:\Git\cyb.sql" 注意:mysql -u 用户名 -p没有空格加上密码 <"sql文件的路径&qu ...

  7. nginx默认配置文件解释

    nginx默认配置文件 nginx.conf 介绍: 全局配置 user  nginx; 设置nginx服务的系统使用用户 worker_processes  1; 工作进程数(建议和CPU核心数保持 ...

  8. c# 第33节 类的封装--访问修饰符

    本节内容: 1:封装的简介 2:封装怎么实现 3:访问修饰符 1:封装的简介 2:封装怎么实现 3:访问修饰符 4:访问修饰符注意点

  9. 【矩阵快速幂】之奥运 hdu 2254

    1.城市的编号不是从0到n-1,而是随便的一个数字,需要离散化否则不能存相关信息 2.城市数不超过30,也就是说我的方法开矩阵不超过60,但是我残念的一开始以为最多可能有20000个不同城市    血 ...

  10. Shiro内置过滤器

    Shiro内置过滤器 DefaultFilter 枚举类定义了shiro所有的默认过滤器. package org.apache.shiro.web.filter.mgt; public enum D ...