egg-connector-remote
v2.0.2
Published
Egg remote REST API connector like loopback
Downloads
55
Maintainers
Readme
egg-connector-remote
使用配置json的方式快速构建 restful api, 以及相应的 swagger 生成文件。类似于 loopback
依赖说明
swagger.json 规则来自于 https://editor.swagger.io//?_ga=2.41951072.471192285.1510301833-940518916.1510301833#/
依赖的 egg 版本
egg-connector-remote 版本 | egg 1.x --- | --- 1.x | 😁 0.x | ❌
依赖的插件
未依赖
开启插件
// config/plugin.js
exports.connectorRemote = {
enable: true,
package: 'egg-connector-remote',
};
功能
- 通过配置生成 swagger.json 的信息,配置语法 参考 loopback http://loopback.io/doc/en/lb3/Define-model-relations.html
- 增加 registerRemote 全局方法. 自动处理 model 和 ctrl 的关系
- 增加 access 访问控制 同 loopback
- 仅适用 role
使用场景
- 类似 loopback 的 rest方式暴露出
swagger.json
详细配置
// 默认配置
const defaultConfig = {
modelsPath: 'model.models',
swaggerDefinition: {
info: { // API informations (required)
title: 'theone.io', // Title (required)
version: '1.0.0', // Version (required)
description: 'swagger service description', // Description (optional)
},
basePath: '/api/v1',
},
registerRemote: true, // 开启注册 remote 功能
accessRemoteDefinition: {
enable: true, // 默认 false, 是否开启访问控制
getMatchFunc: function() => {}, // role 的 Model, 获取验证的方法。
},
};
单元测试
npm run test
feature
- [x] config2swagger: 使用 model.setting 的配置生成 swagger相关文件。
- [x] remote:自动处理 Model.setting 和 ctrl 的关系以及路由的关系
- [x] Test parameter: 自动校验输入输出参数
- [x] access controller: 访问控制, 权鉴设置
- [] 动态增加 remote
- [] 增加beforeRemote 和 afterRemote
提问交流
请到 egg issues 异步交流。
附件
- 复数lib - 强迫症患者使用
License
发布
npm login
npm publish