nodejs中怎么使用hessian

 我来答
河南新华电脑99
2017-06-30 · TA获得超过205个赞
知道小有建树答主
回答量:236
采纳率:75%
帮助的人:135万
展开全部
这个项目主要是针对使用 dubbo 服务的团体或者个人
原生 dubbo 框架可以输出 json 数据供消费者调用,但是假如囿于历史原因 dubbo 不是通过 json 提供数据的,那就只能用原生协议了。之前网上大部分用 node 调取 dubbo 服务都是用 json 格式的库。
所以,封装了一个通过原生协议调取 dubbo 服务, dubbo 文档中有写到,数据使用 hessian 序列化和反序列化的,只要能通过 nodejs 模拟 hessian 的序列化方式就成功了一大半,在 node 可以直接使用 hessian.js 完成这个工作,剩下的就是实现 dubbo 协议的消息封装。
node-zookeeper-dubbo
config
env
envirmoment
conn
zookeeper conn url
path
the service you need
version
dubbo version
Example
var Service=require('node-zookeeper-dubbo');

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;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式