UNPKG

yog-ral

Version:

node-ral with mcpack and nshead

89 lines (69 loc) 2.06 kB
@baidu/yog-ral ------------------ ## 简介 @baidu/yog-ral 模块为 [node-ral](https://github.com/fex-team/node-ral) 的扩展版,主要扩展功能为 - mcpack2 数据格式支持 - nshead 请求协议支持 - bns 资源定位支持 - webfoot 服务描述支持 在使用上 @baidu/yog-ral 与 node-ral 保持一致,仅在配置上拥有更多的配置项 ## 使用说明 **注意** 由于依赖 bns/mcpack,因此目前仅支持在开发机环境于线上机环境下搭配指定的 [Node.js](wiki.baidu.com/pages/viewpage.action?pageId=182206703) 使用 如何无需使用 bns/mcpack 可以直接使用[node-ral](https://github.com/fex-team/node-ral) ### 安装 ```bash npm i @baidu/yog-ral --save ``` 使用方法可以参考测试用例 ral.js ### RAL初始化 ```javascript RAL.init({ confDir : __dirname + path.sep + './config', logger : { "log_path" : __dirname + path.sep + '../logs', "app" : "yog-ral" }, currentIDC : 'tc' }); ``` ### 服务配置 ```javascript module.exports = { PASSPORT: { balance: 'random', webfoot: 'group.ess-session.passport.cn' } }; ``` 或 ```javascript module.exports = { 'PASSPORT': { unpack: 'mcpack2', pack: 'mcpack2', encoding: 'gbk', balance: 'random', protocol: 'nshead', server: [ { bns: 'group.ess-session.passport.cn'} ] } }; ``` ### 发起请求 ```javascript var RAL = require('yog-ral').RAL; var request = RAL('PASSPORT', { data: { 'cmd': 0x01004, 'apid': 1055, 'clientip': ip2int('127.0.0.1'), 'bduss': "GRwaW5wT2ZKbkdLRm9zWGFtQXRvYWgtWW5lc2tKTUVuZURjQ29VT0MtTDBDeFJVQVFBQUFBJCQAAAAAAAAAAAEAAACINUIG1cXI~cDuy8Rob21lAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPR-7FP0fuxTW" }, retry: 2, timeout: 500 }); request.on('data', function(data){ data.uname.should.be.eql('张三李四home'); }); ```