nodejs中怎么使用hessian

发布网友 发布时间:2022-04-23 18:13

我来回答

1个回答

热心网友 时间:2022-04-22 13:50

这个项目主要是针对使用 bbo 服务的团体或者个人
原生 bbo 框架可以输出 json 数据供消费者调用,但是假如囿于历史原因 bbo 不是通过 json 提供数据的,那就只能用原生协议了。之前网上大部分用 node 调取 bbo 服务都是用 json 格式的库。
所以,封装了一个通过原生协议调取 bbo 服务, bbo 文档中有写到,数据使用 hessian 序列化和反序列化的,只要能通过 nodejs 模拟 hessian 的序列化方式就成功了一大半,在 node 可以直接使用 hessian.js 完成这个工作,剩下的就是实现 bbo 协议的消息封装。
node-zookeeper-bbo
config
env
envirmoment
conn
zookeeper conn url
path
the service you need
version
bbo version
Example
var Service=require('node-zookeeper-bbo');

var opt={
env:'test',
conn:'127.0.0.1:2180',
path:'com.customer.Service'
}

var method="getUserByID";
var arg1={$class:'int',$:123}
var args=[arg1];

var service = new Service(opt);
service.excute(method,args,function(err,data){
if(err){
console.log(err);
return;
}
console.log(data)
})

or

service
.excute(method,args)
.then(function(data){
console.log(data);
})
.catch(function(err) {
console.log(err);
})

you can use js-to-java
javascript
var arg1={$class:'int',$:123};
//equivalent
var arg1=java('int',123);

Close zookeeper connection
Default the zookeeper connection is keep-alive,you can call service.zoo.close() to close the connect;

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com