1.0.0 • Published 1 year ago
buping-test-cli v1.0.0
使用说明
安装 gen-client-openapi
npm i --save-dev gen-client-openapi
# or
yarn add -D gen-client-openapi
配置接口生成规则
创建配置文件
touch apiconfig.json
配置文件内容示例
[
{
"name": "服务名称",
"pathPrefix": "/hms/hljUser",
"oasPath": "http://dev-api.hunliji.com/hms/hljUser/v2/api-docs",
"includePaths": [
"^\/hms\/.*\/managerApi\/.*"
],
"apiOptionOperationIdAsApiName": false,
"apiOptionShiftApiName": 4,
"apiOptionFlatten": true,
"apiOptionIgnoreHeaderParam": false,
"output": "./app/common/api/hljUser",
"log": true
}
]
配置类型参考
interface ServiceConfig {
/**
* 服务名称
*/
name: string
/**
* 文档地址
*/
oasPath: string
/**
* 输出目录
*/
output: string
/**
* 输出格式
*/
outputFormat: 'ts' | 'js'
/**
* 路径前缀
*/
pathPrefix?: string
/**
* 指定接口,支持正则表达式,不指定默认生成OpenApi文档中全部接口
*/
includePaths?: string[]
/**
* 接口名称使用OperationId
*/
apiOptionOperationIdAsApiName?: boolean
/**
* 接口名称需缩减的路径段数(依据路径生成)
*/
apiOptionShiftApiName?: number
/**
* 接口扁平化组织
*/
apiOptionFlatten?: boolean
/**
* 忽略Header参数
*/
apiOptionIgnoreHeaderParam?: boolean
/**
* 接口自定义命名
* eg:
* {
* "/user/get/detail":"userDetail",
* }
*/
apiOptionCustomerApiNames?: any
/**
* 是否打印日志
*/
log?: boolean
}
生成接口声明
npx gen-client apiconfig.json
配置package.json scripts
packages.json scripts节添加如下
{
...
"scripts": {
...
"build-api": "gen-client apiconfig.json"
},
...
}
生成指令
npm run build-api
# or
yarn build-api
本工具发布
npm publish --registry http://pripub.hljnbw.cn:8019
npm unpublish gen-client-openapi@1.0.0 --registry http://pripub.hljnbw.cn:8019
1.0.0
1 year ago