VirAPI -- 非侵入式虚构数据在线申请响应生成接口,反对MockJs语法,申请即可得自定义规定的响应数据。本着让宽广开发者能分享VirAPI的成绩,也为了VirAPI能更好的服务大家,现做出重大决定——将VirAPI开源!!!。
此次开源,将公布在Githu以及Gitee两大开源仓库网站上。开源的内容次要包含:
创立及治理我的项目利用创立及治理虚构接口在线测试虚构接口查看虚构接口申请日志查看虚构接口申请相干数据统计登录及编辑个人资料当初您能够依据本人的须要拉取开源代码进行本地部署,若有相干开发能力还可在下面进行降级再革新。
本开源我的项目次要分前端代码仓库以及后端代码仓库;仓库保护上将以Github为主,这也就意味着在Github上更新的更及时。
Github上对应的仓库地址为:
VirAPI开源版VirAPI开源版--前端代码仓库Gitee上对应的仓库地址为:
VirAPI开源版1. VirAPI开源版 https://github.com/bluvenr/open_virapi1.1 环境依赖NodeJs(NPM)MongoDB本我的项目应用了eggjs作为后端逻辑我的项目框架。
1.2 运行&部署搭建好必要环境后,执行npm install装置我的项目所需依赖包。
本地测试运行,则请执行:npm dev
正式环境运行,请执行:npm start;此时若想敞开进行我的项目,则执行:npm stop。因为eggjs框架的机制,请每次批改后端代码后重启该我的项目npm restart。
默认服务端口为7001,本地可间接拜访http://127.0.0.1:7001/进入控制台治理页面。若是部署到线上,可配置nginx或apache进行重定向。
1.3 我的项目配置相干介绍我的项目配置文件放在config/config.default.js文件中,若是搁置服务器正式环境,则倡议复制该文件您须要自定义的配置在同目录下命名为config.local.js文件中,并设置您要的配置参数。
默认config.default.js文件内容为:
/* eslint valid-jsdoc: "off" */'use strict';const fs = require('fs');const path = require('path');/** * @param {Egg.EggAppInfo} appInfo app info */module.exports = appInfo => { /** * built-in config * @type {Egg.EggAppConfig} **/ const config = { mongoose: { // url: 'mongodb://127.0.0.1:27017/open_virapi_db', options: { // useMongoClient: true, autoReconnect: true, reconnectTries: Number.MAX_VALUE, bufferMaxEntries: 0, }, }, bcrypt: { saltRounds: 10, }, security: { csrf: { enable: false, ignoreJSON: true, }, domainWhiteList: [ 'http://localhost:8080', ], }, validate: { convert: true, }, cors: { // origin: '*', allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH,OPTIONS', }, jwt: { secret: 'virapi-202008192239', }, proxy: true, // 通过ips获取nginx代理层实在IP session: { key: 'Vir_SESSION', // 承载 Session 的 Cookie 键值对名字 maxAge: 2 * 3600 * 1000, // Session 的最大无效工夫 httpOnly: true, encrypt: true, renew: true, // 每次拜访页面都会给session会话延长时间 }, static: { prefix: '/', dir: path.join(appInfo.baseDir, 'app/public'), dynamic: true, preload: false, maxAge: 0, buffer: false, }, }; // use for cookie sign key, should change to your own and keep security config.keys = appInfo.name + '_hNW87vqPkMiMpLBHEtolB3Yg6vQsk5Ip4AJzCih2QCXbZBmjh5I033ELjdwB'; // add your middleware config here config.middleware = [ 'errorHandler', ]; config.siteFile = { '/favicon.ico': fs.readFileSync(appInfo.baseDir + '/app/public/favicon.ico'), }; // add your user config here const userConfig = { // myAppName: 'egg', imgUri: '/images', imgDir: appInfo.baseDir + '/app/public/images', }; return { ...config, ...userConfig, };};在您的自定义配置参数文件config.local.js中,咱们建议您配置以下必要参数:
...