搭建API Mock

Posted 新手问路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建API Mock相关的知识,希望对你有一定的参考价值。

所需环境

Node.js 8.9.4+
mysql 5.7+
Redis 4.0+

 

Node.js 安装

1.要安装nvm,需要安装构建源包所需的工具,CentOS 上安装,用这些命令来安装构建工具:
sudo yum update
sudo yum groupinstall Development Tools

2.现在当安装构建工具时,需要从nvm的官方github存储库获取并执行安装脚本
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.1/install.sh | bash

3.这将在您的机器上安装nvm。关闭或者重新打开您的终端,运行以下命令检查nvm是否已成功安装,这个命令简单的终输出 nvm
command -v nvm

4. 要找出可以通过nvm安装的Node.js的可用版本,运行以下命令,这个命令的输出将提供一个庞大的node版本列表
nvm ls-remote

5.安装
nvm install 8.15.1

安装PM2
npm  install -g pm2

 

Mysql 5.7+ 安装

wget  https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar
tar  -xvf  mysql-5.7.24-1.el7.x86_64.rpm-bundle.tar

安装依赖:
yum install libaio.so.1*
yum install perl
安装mysql
rpm -ivh mysql-community-common-5.7.24-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.24-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.24-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.24-1.el7.x86_64.rpm

启动:
systemctl start mysqld
登录 (第一次密码为空也可登陆不行就获取临时密码)
mysql -uroot -p

获取密码:
cat /var/log/mysqld.log |grep generated
使用获取的密码登录
mysql -uroot -p密码

登陆mysql后操作 mysql>
修改密码限制不然无法设置太简单的密码
set global validate_password_policy=0;
set global validate_password_length=1;
修改密码
alter user root@localhost identified by 123456;

创建一个RAP2_DELOS_APP数据库一会要用
CREATE DATABASE IF NOT EXISTS RAP2_DELOS_APP DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

 

Redis-4.0.11安装

wget http://download.redis.io/releases/redis-4.0.11.tar.gz
tar xzf redis-4.0.11.tar.gz
cd redis-4.0.11
make

启动服务端
src/redis-server &

客户端连接测试
src/redis-cli

 

后端 rap2-delos 安装

# 下载源代码
git clone https://github.com/thx/rap2-delos.git
# 切换目录
cd  rap2-delos
# 安装依赖包
npm install
# 安装 TypeScript 编译包
npm install typescript -g
# 编辑测试配置文件(注意这里只是为了测试,主要是为了初始化数据库)
rap2-delos/src/config/config.dev.ts

# 修改的内容(大约在11行左右开始):
# 将数据库配置成我们的数据库名称和路径和用户和密码
dialect: mysql,
host: localhost,
port: 3306,
username: root,
password: 123456,
database: RAP2_DELOS_APP,

# 编译启动
npm run build
npm run create-db
npm run dev

# 编辑正式配置文件(配置正式数据库)
rap2-delos/src/config/config.prod.ts

# 修改的内容(大约在12行左右开始):
# 将数据库配置成我们的数据库名称和路径和用户和密码
dialect: mysql,
host: process.env.MYSQL_URL || localhost,
port: (process.env.MYSQL_PORT && parseInt(process.env.MYSQL_PORT)) || 3306,
username: process.env.MYSQL_USERNAME || root,
password: process.env.MYSQL_PASSWD || 123456,
database: process.env.MYSQL_SCHEMA || RAP2_DELOS_APP,

# 打开tsconfig.json文件,找的到"noImplicitAny"改为false 不然build会报错
npm run build
npm start

 

前端 rap2-dolores 安装

# 拉取代码
git clone https://github.com/thx/rap2-dolores.git
# 切换目录
cd  rap2-dolores
# 初始化
npm install

# 正式配置
配置文件路径:/src/config/config.prod.js
module.exports = {
  serve: http://10.1.3.210:8080,
  keys: [some secret hurr],
  session: {
    key: koa:sess
  }
}
更改serve  字段
改成我们的后端访问地址,访问地址直接使用ip,不要使用127.0.0.1。 注意加 http://

#  编译React生产包
npm run build

#  安装serve
npm install -g serve

# 运行 
serve -s ./build -p 8010 &

#由于出现关闭ssh窗口自动断掉,在rap2-dolores文件夹里放置了一个sh脚本执行serve -s ./build -p 8010 &

# 开放局问8080和8010端口权限 一个服务器的一个前端的
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone= public --query-port=8080/tcp

firewall-cmd --zone=public --add-port=8010/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --query-port=8010/tcp

 

以上是关于搭建API Mock的主要内容,如果未能解决你的问题,请参考以下文章

Python+Flask搭建mock api server

json-server30秒无代码搭建一个完整的REST API服务-基础入门

vite+mockjs+vite-plugin-mock 搭建mock环境

使用postman搭建mock服务

搭建Mock Server

mock数据(模拟后台数据)