UNPKG

2.72 kBMarkdownView Raw
1ali-ons
2=======
3
4[![NPM version][npm-image]][npm-url]
5[![build status][travis-image]][travis-url]
6[![David deps][david-image]][david-url]
7
8[npm-image]: https://img.shields.io/npm/v/ali-ons.svg?style=flat-square
9[npm-url]: https://npmjs.org/package/ali-ons
10[travis-image]: https://img.shields.io/travis/ali-sdk/ali-ons.svg?style=flat-square
11[travis-url]: https://travis-ci.org/ali-sdk/ali-ons
12[david-image]: https://img.shields.io/david/ali-sdk/ali-ons.svg?style=flat-square
13[david-url]: https://david-dm.org/ali-sdk/ali-ons
14
15Aliyun Open Notification Service Client (base on opensource project [RocketMQ](https://rocketmq.apache.org/))
16
17Sub module of [ali-sdk](https://github.com/ali-sdk/ali-sdk).
18
19## Install
20
21```bash
22npm install ali-ons --save
23```
24
25## Usage
26
27consumer
28
29```js
30'use strict';
31
32const httpclient = require('urllib');
33const Consumer = require('ali-ons').Consumer;
34const consumer = new Consumer({
35 httpclient,
36 accessKeyId: 'your-accessKeyId',
37 accessKeySecret: 'your-AccessKeySecret',
38 consumerGroup: 'your-consumer-group',
39 // namespace: '', // aliyun namespace support
40 // isBroadcast: true,
41});
42
43consumer.subscribe(config.topic, '*', async msg => {
44 console.log(`receive message, msgId: ${msg.msgId}, body: ${msg.body.toString()}`)
45 // return Consumer.ACTION_RETRY; // you can return ACTION_RETRY, then this message will be directly retried
46});
47
48consumer.on('error', err => console.log(err));
49```
50
51producer
52
53```js
54'use strict';
55const httpclient = require('urllib');
56const Producer = require('ali-ons').Producer;
57const Message = require('ali-ons').Message;
58
59const producer = new Producer({
60 httpclient,
61 accessKeyId: 'your-accessKeyId',
62 accessKeySecret: 'your-AccessKeySecret',
63 producerGroup: 'your-producer-group',
64 // namespace: '', // aliyun namespace support
65});
66
67(async () => {
68 const msg = new Message('your-topic', // topic
69 'TagA', // tag
70 'Hello ONS !!! ' // body
71 );
72
73 // set Message#keys
74 msg.keys = ['key1'];
75
76 // delay consume
77 // msg.setStartDeliverTime(Date.now() + 5000);
78
79 const sendResult = await producer.send(msg);
80 console.log(sendResult);
81})().catch(err => console.error(err))
82```
83
84## Secure Keys
85
86Please contact to @gxcsoccer to give you accessKey
87
88- [ons secure data](https://sharelock.io/1/UM02CJiYyhXiZDOn1nhX0iqPqMIQtdwI_T5BY3F-tHs.d8-ycA/01veKH9kgAuFuKCqlVPzGsyPWJ8mQLaKPJjjcB9tpdbvi9L6XQ/IgqDvAdVDMzV9lK2gQzyAj7q-CNk8-1tWrLmdqMV0oJ5qgky40/HgpZyKKDfOGAcyqQ20RUdRgCLRWqF8LUUko0uDl_L-ATNOsi5z/W2bsvBc8tAoqSwNR7u2Sqe6XkNmD98s3UQOK-6T8--VwTbHzcG/dwkHwie3EkGB-TbiMnbRh7_5A-DaOTCtALP3xvl4G0XKxuOriC/2yfuPp7WRucTAoqx2STO5Hv3MZEhh3IXf7YiOQ8pWDDqjLuQSY/_irqzYyeseY9m106ksMUq3-yS_qkBRIuoyL-hHk9ZRhGppsdA5/Dw4Pjg.fmNP3aFkLnvPuhlPRwNcng)
89
90## License
91
92[MIT](LICENSE)