UNPKG

yc-acm-client

Version:

aliyun acm client

110 lines (87 loc) 2.67 kB
# acm-client > Aliyun acm client for Node.js. 阿里云 acm Node.js 客户端 https://help.aliyun.com/document_detail/60137.html ## Install ```bash $ npm i acm-client --save ``` ## Usage ```js const ACMClient = require('acm-client'); const acm = new ACMClient({ endpoint: 'acm.aliyun.com', // acm 控制台查看 namespace: '***************', // acm 控制台查看 accessKey: '***************', // acm 控制台查看 secretKey: '***************', // acm 控制台查看 requestTimeout: 6000, // 请求超时时间,默认6s }); // 主动拉取配置 co(function*() { const content= yield acm.getConfig('test', 'DEFAULT_GROUP'); console.log('getConfig = ',content); }); // 监听数据更新 acm.subscribe({ dataId: 'test', group: 'DEFAULT_GROUP', }, content => { console.log(content); }); // 发布配置接口 co(function*() { const content= yield acm.publishSingle('test', 'DEFAULT_GROUP', '测试'); console.log('getConfig = ',content); }); // 删除配置 co(function*() { yield acm.remove('test', 'DEFAULT_GROUP'); }); // 批量获取配置 co(function*() { const content = yield amc.batchGetConfig(['test', 'test1'], 'DEFAULT_GROUP'); }); // 获取所有配置 co(function*() { const configList = yield amc.getAllConfigInfo(); }); ``` ### Error Events 异常处理 ```js acm.on('error', function (err) { // 可以在这里统一进行日志的记录 // 如果不监听错误事件,所有的异常都将会打印到 stderr }); ``` ### API #### 获取配置 * `function* getConfig(dataId, group)` - {String} dataId - 配置id - {String} group - 配置分组 #### 发布配置 * `function* publishSingle(dataId, group, content)` - {String} dataId - 配置id - {String} group - 配置分组 - {String} content - 发布内容 #### 删除配置 * `function* remove(dataId, group)` - {String} dataId - 配置id - {String} group - 配置分组 #### 批量获取多个配置 * `function* batchGetConfig(dataIds, group)` - {Array} dataIds - 配置id - {String} group - 配置分组 #### 订阅配置 * `function subscribe(info, listener)` - {Object} info - {String} dataId - 配置id - {String} group - 配置分组 - {Function} listener - 回调函数 #### 取消订阅 * `function unSubscribe(info, [listener])` - {Object} info - {String} dataId - 配置id - {String} group - 配置分组 - {Function} listener - 回调函数(可选,不传就移除所有监听函数) #### 获取所有配置 * `function getConfigs()` 该接口不返回配置的具体内容,拿到配置信息后请再调用`getConfig`获取配置内容 ## Contacts * [@hustxiaoc](https://github.com/hustxiaoc)