因为项目要求特殊的原因,公司要求使用Nodejs+HApi(纯英文的API)+Mysql构建新的项目。网上找了一堆资料,看了半天一脸懵逼。结论就是:版本的差异,资料国内几乎都是旧的17年前的了。根据资料和文档记录了整个环境的搭建过程。

1、环境配置

  • 这里我用的 windows10+VsCode+NodeV8.1
  • 先创建项目文件夹,打开磁盘新建目录‘HapiToMysql’,用作于项目文件夹,输入命令进入目录。

  • 初始化项目,命令如下:
npm init

然后根据实际情况输入具体参数,具体参考nodejs,这里狂按回车带过,项目初始化成功,产生配置文件‘package.json’,这里入口文件默认为‘Index.js’该名为‘Server.js’,增加npm start启动配置

 

  • 项目基础初始化
 npm install hapi          //安装hapi
npm install hapi-swagger //hapi文档自动生成
npm install mysql2 //数据库操作
npm install inert //静态文件处理
npm install joi //验证插件
npm install vision //母版渲染
npm install require-directory //文件遍历
npm install sequelize //查询实例
  • 上面只是初始化了项目环境,仅仅是一个开始,HapiToMysql 项目结构如下:

  • 打开启动配置文件‘server.js’,输入代码
 const Hapi = require('hapi');
const Server = new Hapi.Server({ host: 'localhost', port: 8090 }); const Init = async () => {
await Server.start();
console.log(`Server running at: ${Server.info.uri}`);
}; process.on('unhandledRejection', (err) => { console.log(err);
process.exit(1);
});
Init();

  

  输入Node启动命令(需进入项目文件):npm start

  系统将会显示:Server running at: http://localhost:8090

  把地址输入到浏览器:

  

  404,找不到路由

  未完.... 下篇介绍路由配置

Hapi+MySql项目实战环境初始化(一)的更多相关文章

  1. Hapi+MySql项目实战路由初始化(二)

    配置路由规则 将路由文件放在routes文件夹里,修改‘Server.js’文件,增加如下代码: 我们这里指明了require('./routes') routes文件夹,require可以文件但是不 ...

  2. Hapi+MySql项目实战配置插件-加载文件渲染母版(三)

    加载插件 一般在其它node框架下,我们安装好插件直接require('插件')就能正常使用了,但是在Hapi下我们必须要Server.register()方法,才能正常使用插件.举个例子: serv ...

  3. Hapi+MySql项目实战自动化文档生成(四)

    自动化生成swagger文档 使用hapi插件hapi-swagger,简单配置下插件,先修改下plugin_config.js文件: //plugin_config.js const Swagger ...

  4. Hapi+MySql项目实战数据库操作(四)

    数据库访问 下面以Node的ORM框架Sequelize来操作数据库,Mysql为例. 配置数据库连接信息config/db_config.js: //db_config.js module.expo ...

  5. Selenium Web 自动化 - 项目实战环境准备

    Selenium Web 自动化 - 项目实战环境准备 2016-08-29 目录 1 部署TestNG  1.1 安装TestNG  1.2 添加TestNG类库2 部署Maven  2.1 mav ...

  6. 海量数据MySQL项目实战

    主要内容包含 MySQL 典型数据库架构介绍.MySQL 主流数据库架构对比等理论性知识,然后从“订单.用户”两个项目实战,抛砖引玉,介绍亿级互联网业务数据库项目如何设计. MySQL 典型数据库架构 ...

  7. 嵌入式web服务器BOA+CGI+HTML+MySQL项目实战——Linux

    准备环境操作系统: Ubuntu12.04 LTS环境搭建: 需要 BOA,Apache,CCGI,MySQL,GCC[Linux下嵌入式Web服务器BOA和CGI编程开发][数据库的相关知识——学习 ...

  8. vue项目windows环境初始化

    下载nodejs zip包并加载到环境变量 nodejs的版本最好使用12版,而不是最新版 npm install webpack -gnpm install -g yarnyarn config s ...

  9. Java Drp项目实战—— 环境搭建

    概要 我们要開始一个关于Java项目的开发,那么我们就须要搭建一个关于Java开发的环境,那么搭建一个Java开发环境,都须要些什么东东,又有些什么注意事项呢. 过程 我先将我搭建Java环境的软件和 ...

随机推荐

  1. Java set接口之HashSet集合原理讲解

    Set接口 java.util.set接口继承自Collection接口,它与Collection接口中的方法基本一致, 并没有对 Collection接口进行功能上的扩充,只是比collection ...

  2. const和volitale

    1. const只读变量 const修饰的变量是只读的,本质还是变量 const修饰的局部变量在栈上分配空间(可以通过指针修改) const修饰的全局变量在全局数据区分配空间(指针也修改不了) con ...

  3. 最大区间和变形 - codeforces

    题意 : 可以选择操作一串区间,将区间内的某一个数全部变成一个新的数字,询问整个区间中某个数字的出现次数总共有多少个? 思路分析 : 首先最后选的一定是一个区间,然后 ans = cnt(1, l-1 ...

  4. 从网上下载DLL

    1,微软官网 2:https://www.zhaodll.com/ 3:http://www.dllzj.com/

  5. day6 云道页面 知识点梳理(1)

    关于块级元素.行内元素.行内块元素的梳理 (1)块级元素 特点:   a.可以设置宽高,行高,外边距和内边距   b.块级元素会独占一行    c.宽度默认是容器的100%    d.可以容纳内联元素 ...

  6. 《利用python进行数据分析》——Numpy基础

    一.创建数组 1.创建数组的函数 array:将输入数据(列表.元组.数组或其他序列类型)转换为ndarray,可用dtype指定数据类型. >>> import numpy as ...

  7. 记第一场cf比赛(Codeforces915)

    比赛感想 本来21:05开始的比赛,结果记成21:30了...晚了25分钟才开始[捂脸] 这次是Educational Round,所以还比较简单. 前两道题一眼看去模拟+贪心,怕错仔细看了好几遍题, ...

  8. intellij idea svn 切换分支

    原文地址:https://blog.csdn.net/wangjun5159/article/details/75137964 切换分支 更新/切换svn的快捷键是ctrl+T,这个快捷键还是很好用的 ...

  9. Java Web面试题整理(思维导图)

    1,动态网站技术有哪些? 2,一般的Web架构是指BS 还是CS,BS架构是什么咚咚? 3,Web应用程序的流程,即把一个URL串输入地址栏后发生写什么? 4,说一说Servlet生命周期? 5,在W ...

  10. python,for循环的使用案例集

    1.循环执行某一系列操作.将该操作定义为一个def,然后使用for去循环执行该操作 思路,先把操作定义为一个函数,在for循环执行这个函数 比如下面案例,把微信好友列表内的好友,循环的方式依次调整到第 ...