@baidu/yog-ral
简介
@baidu/yog-ral 模块为 node-ral 的扩展版,主要扩展功能为
- mcpack2 数据格式支持
- nshead 请求协议支持
- bns 资源定位支持
- webfoot 服务描述支持
在使用上 @baidu/yog-ral 与 node-ral 保持一致,仅在配置上拥有更多的配置项
使用说明
注意 由于依赖 bns/mcpack,因此目前仅支持在开发机环境于线上机环境下搭配指定的 Node.js 使用
如何无需使用 bns/mcpack 可以直接使用node-ral
安装
npm i @baidu/yog-ral --save
使用方法可以参考测试用例 ral.js
RAL初始化
RAL.init({
confDir : __dirname + path.sep + './config',
logger : {
"log_path" : __dirname + path.sep + '../logs',
"app" : "yog-ral"
},
currentIDC : 'tc'
});
服务配置
module.exports = {
PASSPORT: {
balance: 'random',
webfoot: 'group.ess-session.passport.cn'
}
};
或
module.exports = {
'PASSPORT': {
unpack: 'mcpack2',
pack: 'mcpack2',
encoding: 'gbk',
balance: 'random',
protocol: 'nshead',
server: [
{ bns: 'group.ess-session.passport.cn'}
]
}
};
发起请求
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');
});